FIX: Statistics Maintenance Creates Significant Bottleneck on SQL Servers that Use 16 or More CPUs

This article was previously published under Q293849
This article has been archived. It is offered "as is" and will no longer be updated.
BUG #: 217586 (SHILOH_BUGS)
The wait time that results from an update of the sysindexes system table during a transaction commit may be a significant bottleneck in transaction throughput. The wait time is not a problem on multi-processor computers with 2, 4 or 8 processors. However, the wait time is a major bottleneck for servers with 16 and 32 processors (16 way and 32 way computers).
Upon transaction commit, all the updates of a page or row count are performed directly to the sysindexes system table. Although the update is not a problem for 2, 4 and 8 way computer, it is a bottleneck for 16 way or 32 way computers.
To resolve this problem, obtain the latest service pack for SQL Server 2000. For additional information, click the following article number to view the article in theMicrosoft Knowledge Base:
290211 INF: How to Obtain the Latest SQL Server 2000 Service Pack
The page or row count changes are now cached and the sysindexes system table is periodically updated. To limit the duration of the values in cache, the cache is flushed frequently. The frequency of cache flushing is based on the percentage of changes in cache compared to disk or a small time interval since the last cache flush.
Microsoft has confirmed that this is a problem in SQL Server 2000. This problem was first corrected in SQL Server 2000 Service Pack 1.
16 way 32 multi-processor

Article ID: 293849 - Last Review: 01/16/2015 22:07:39 - Revision: 3.2

Microsoft SQL Server 2000 Standard Edition

  • kbnosurvey kbarchive kbbug kbfix kbsqlserv2000sp1fix KB293849