MartyConnelly
martyconnelly at shaw.ca
Thu Dec 4 10:12:06 CST 2003
You can track the amount of throttling going on through DBCC and logs I once tracked this and kept a log in an access table. There is more here or SQL BOL search on ( DBCC CONCURRENCYVIOLATION ) Watch out below for yellow on white tips (kind of hard to read http://www.betav.com/Files/Content/Whitepapers/msde_files/msde.htm To track the throttling you can use something like SP below with DBCC or turn it on in the SQL log, it gives you the number of times you have exceed the 5 connection limit. This dumps the records to database table. Concurrency violations since 2003-01-21 12:20:43.747 1 2 3 4 5 6 7 8 9 10-100 >100 0 0 0 0 0 0 0 0 0 0 0 Concurrency violations will be written to the SQL Server error log. ALTER PROCEDURE StoredProcedureDBCCworks /* ( @parameter1 datatype = default value, @parameter2 datatype OUTPUT ) */ AS SET NOCOUNT ON -- Create the table to accept the results or use #tracestatus #indicates temptable If NOT EXISTS (SELECT * FROM SYSOBJECTS WHERE ID = OBJECT_ID('DBCCtracestatus ') AND sysstat & 0xf=3) DROP TABLE DBCCtracestatus BEGIN CREATE TABLE DBCCtracestatus ( maint varchar(4096), TraceFlag INT, Status INT ) END -- Marty Connelly Victoria, B.C. Canada