FIX: Executing Sp_replcounters with INSERT..EXEC May Cause Server to Stop Responding

This article was previously published under Q221558
This article has been archived. It is offered "as is" and will no longer be updated.
BUG #: 54540 (SQLBUG_70)
Executing the replication stored procedure sp_replcounters using the Transact-SQL INSERT..EXEC syntax may cause SQL Server to stop responding (hang). Depending on the existing activity against SQL Server, either a complete hang may occur, where new connections will fail, or it will hang so that existing queries cannot execute.

It is possible for the server to become only partially hung where some work may continue. However, in these cases internal processes in the server, such as Lazywriter, may not get scheduled. In these situations, users may consume all of the memory allocated to SQL Server and the following type of errors may then be encountered when new connections are made to the server:
ods Error: 17803, Severity: 17, State: 17
ods Insufficient memory available..
ods Error: 17803, Severity: 17, State: 14
ods Insufficient memory available..
If you need to save the results from sp_replcounters into a table, use a INSERT with SELECT against the sysperfinfo table. The sysperfinfo table contains information about all SQL Server performance counters including replication.
Microsoft has confirmed this to be a problem in SQL Server 7.0. This problem has been corrected in U.S. Service Pack 1 for Microsoft SQL Server 7.0. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
232570INF: How to Obtain Service Pack 1 for Microsoft SQL Server 7.0 and Microsoft Data Engine (MSDE) 1.0
For more information, contact your primary support provider.
spinlock DBTABLE hang hangs hung tsql t-sql

Article ID: 221558 - Last Review: 01/16/2015 19:30:07 - Revision: 2.0

  • Microsoft SQL Server 7.0 Standard Edition
  • kbnosurvey kbarchive kbbug kbfix kbqfe KB221558