Trace FlagsFlag | Description |
---|
108 | (Documented) To allow dynamic and host variables in create view statements in ASE 12.5 and above. | 200 | Displays messages about the before image of the query-tree. | 201 | Displays messages about the after image of the query-tree. | 241 | Compress all query-trees whenever the SQL dataserver is started. | 260 | Reduce TDS (Tabular Data Stream) overhead in stored procedures. Turn off done-in-behaviour packets. Do not use this if your application is a ct-lib based application; it'll break. Why set this on? Glad you asked, typically with a db-lib application a packet is sent back to the client for each batch executed within a stored procedure. This can be taxing in a WAN/LAN environment. | 291 | Changes the hierarchy and casting of datatypes to pre-11.5.1 behaviour. There was an issue is some very rare cases where a wrong result could occur, but that's been cleared up in 11.9.2 and above. The trace can be used at boot time or at the session level. Keep in mind that it does not disqualify a table scan from occurring. What it will do is result in fewer datatype mismatch situations and thus the optimizer will be able to estimate the costs of SARGs and joins on columns involved in a mismatch. | 299 | This trace flag instructs the dataserver to not recompile a child stored procedure that inherits a temp table from a parent procedure. | 302 | Print information about the optimizer's index selection. | 303 | Display OR strategy | 304 | Revert special or optimizer strategy to that strategy used in pre-System 11 (this traceflag resolved several bug issues in System 11, most of these bugs are fixed in ASE 11.0.3.2) | 310 | Print information about the optimizer's join selection. | 311 | Display the expected IO to satisfy a query. Like statistics IO without actually executing. | 317 | Provide extra optimization information. | 319 | Reformatting strategies. | 320 | Turn off the join order heuristic. | 324 | Turn off the like optimization for ad-hoc queries using @local_variables. | 326 | (Only valid in ASE versions prior to 11.9.2.) Instructs the server to use arithmetic averaging when calculating density instead of a geometric weighted average when updating statistics. Useful for building better stats when an index has skew on the leading column. Use only for
updating the stats of a table/index with known skewed data. | 602 | Prints out diagnostic information for deadlock prevention. | 603 | Prints out diagnostic information when avoiding deadlock. | 699 | Turn off transaction logging for the entire SQL dataserver. | 1204* | Send deadlock detection to the errorlog. | 1205 | Stack trace on deadlock. | 1206 | Disable lock promotion. | 1603* | Use standard disk I/O (i.e. turn off asynchronous I/O). | 1605 | Start secondary engines by hand | 1606 | Create a debug engine start file. This allows you to start up a debug engine which can access the server's shared memory for running diagnostics. I'm not sure how useful this is in a production environment as the debugger often brings down the server. I'm not sure if Sybase have ported the debug stuff to 10/11. Like most of their debug tools it started off quite strongly but was never developed. | 1608 | Startup only engine 0; use dbcc engine("online") to incrementally bring up additional engines until the maximum number of configured engines. | 1610* | Boot the SQL dataserver with TCP_NODELAY enabled. | 1611* | If possible, pin shared memory -- check errorlog for success/failure. | 1613 | Set affinity of the SQL dataserver engine's onto particular CPUs -- usually pins engine 0 to processor 0, engine 1 to processor 1... | 1615 | SGI only: turn on recoverability to filesystem devices. | 1625 | Linux only: Revert to using cached filesystem I/O. By default, ASE on Linux (11.9.2 and above) opens filesystem devices using O_SYNC, unlike other Unix based releases, which means it is safe to use filesystems devices for production systems. | 2512 | Prevent dbcc from checking syslogs. Useful when you are constantly getting spurious allocation errors. | 3300 | Display each log record that is being processed during recovery. You may wish to redirect stdout because it can be a lot of information. | 3500 | Disable checkpointing. | 3502 | Track checkpointing of databases in errorlog. | 3601 | Stack trace when error raised. | 3604 | Send dbcc output to screen. | 3605 | Send dbcc output to errorlog. | 3607 | Do not recover any database, clear behaviour start up checkpoint process. | 3608 | Recover master only. Do not clear tempdb or start up checkpoint process. | 3609 | Recover all databases. Do not clear tempdb or start up checkpoint process. | 3610 | Pre-System 10 behaviour: divide by zero to result in NULL instead of error - also see Q6.2.5. | 3620 | Do not kill infected processes. | 4001 | Very verbose logging of each login attempt to the errorlog. Includes tons of information. | 4012 | Don't spawn chkptproc. | 4013 | Place a record in the errorlog for each login to the dataserver. | 4020 | Boot without recover. | 5101 | Forces all I/O requests to go through engine 0. This removes the contention between processors but could create a bottleneck if engine 0 becomes busy with non-I/O tasks. For more information...5101/5102. | 5102 | Prevents engine 0 from running any non-affinitied tasks. For more information...5101/5102. | 7103 | Disable table lock promotion for text columns. | 8203 | Display statement and transaction locks on a deadlock error. | * | Starting with System 11 these are sp_configure'able |
5101Normally, each engine issues and checks for its own Disk I/O on behalf of the tasks it runs. In completely symmetric operating systems, this behavior provides maximum I/O throughput for ASE. Some operating systems are not completely symmetric in their Disk I/O routines. For these environments, the server can be booted with the 5101 trace flag. While tasks still request disk I/O from any engine, the actual request to/from the OS is performed by engine 0. The performance benefit comes from the reduced or eliminated contention on the locking mechanism inside the OS kernel. To enable I/O affinity to engine 0, start ASE with the 5101 Trace Flag. Your errorlog will indicate the use of this option with the message: Disk I/O affinitied to engine: 0
This trace flag only provides performance gains for servers with 3 or more dataserver engines configured and being significantly utilized. Use of this trace flag with fully symmetric operating systems will degrade performance!
5102The 5102 trace flag prevents engine 0 from running any non-affinitied tasks. Normally, this forces engine 0 to perform Network I/O only. Applications with heavy result set requirements (either large results or many connections issuing short, fast requests) may benefit. This effectively eliminates the normal latency for engine 0 to complete running its user thread before it issues the network I/O to the underlying network transport driver. If used in conjunction with the 5101 trace flag, engine 0 would perform all Disk I/O and Network I/O. For environments with heavy disk and network I/O, engine 0 could easily saturate when only the 5101 flag is in use. This flag allows engine 0 to concentrate on I/O by not allowing it to run user tasks. To force task affinity off engine 0, start ASE with the 5102 Trace Flag. Your errorlog will indicate the use of this option with the message: I/O only enabled for engine: 0
Warning: Not supported by Sybase. Provided here for your enjoyment. 转载自:http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4
5101Normally, each engine issues and checks for its own Disk I/O on behalf of the tasks it runs. In completely symmetric operating systems, this behavior provides maximum I/O throughput for ASE. Some operating systems are not completely symmetric in their Disk I/O routines. For these environments, the server can be booted with the 5101 trace flag. While tasks still request disk I/O from any engine, the actual request to/from the OS is performed by engine 0. The performance benefit comes from the reduced or eliminated contention on the locking mechanism inside the OS kernel. To enable I/O affinity to engine 0, start ASE with the 5101 Trace Flag. Your errorlog will indicate the use of this option with the message: Disk I/O affinitied to engine: 0
This trace flag only provides performance gains for servers with 3 or more dataserver engines configured and being significantly utilized. Use of this trace flag with fully symmetric operating systems will degrade performance!
5102The 5102 trace flag prevents engine 0 from running any non-affinitied tasks. Normally, this forces engine 0 to perform Network I/O only. Applications with heavy result set requirements (either large results or many connections issuing short, fast requests) may benefit. This effectively eliminates the normal latency for engine 0 to complete running its user thread before it issues the network I/O to the underlying network transport driver. If used in conjunction with the 5101 trace flag, engine 0 would perform all Disk I/O and Network I/O. For environments with heavy disk and network I/O, engine 0 could easily saturate when only the 5101 flag is in use. This flag allows engine 0 to concentrate on I/O by not allowing it to run user tasks. To force task affinity off engine 0, start ASE with the 5102 Trace Flag. Your errorlog will indicate the use of this option with the message: I/O only enabled for engine: 0
Warning: Not supported by Sybase. Provided here for your enjoyment. 转载自:http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4
5101Normally, each engine issues and checks for its own Disk I/O on behalf of the tasks it runs. In completely symmetric operating systems, this behavior provides maximum I/O throughput for ASE. Some operating systems are not completely symmetric in their Disk I/O routines. For these environments, the server can be booted with the 5101 trace flag. While tasks still request disk I/O from any engine, the actual request to/from the OS is performed by engine 0. The performance benefit comes from the reduced or eliminated contention on the locking mechanism inside the OS kernel. To enable I/O affinity to engine 0, start ASE with the 5101 Trace Flag. Your errorlog will indicate the use of this option with the message: Disk I/O affinitied to engine: 0
This trace flag only provides performance gains for servers with 3 or more dataserver engines configured and being significantly utilized. Use of this trace flag with fully symmetric operating systems will degrade performance!
5102The 5102 trace flag prevents engine 0 from running any non-affinitied tasks. Normally, this forces engine 0 to perform Network I/O only. Applications with heavy result set requirements (either large results or many connections issuing short, fast requests) may benefit. This effectively eliminates the normal latency for engine 0 to complete running its user thread before it issues the network I/O to the underlying network transport driver. If used in conjunction with the 5101 trace flag, engine 0 would perform all Disk I/O and Network I/O. For environments with heavy disk and network I/O, engine 0 could easily saturate when only the 5101 flag is in use. This flag allows engine 0 to concentrate on I/O by not allowing it to run user tasks. To force task affinity off engine 0, start ASE with the 5102 Trace Flag. Your errorlog will indicate the use of this option with the message: I/O only enabled for engine: 0
Warning: Not supported by Sybase. Provided here for your enjoyment. 转载自:http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4 |