FIX: SQL Debugger Stops Working
Article ID: 158978
Article Last Modified on 10/24/2003
APPLIES TO
- Microsoft Visual C++ 4.2 Enterprise Edition, when used with:
This article was previously published under Q158978
SYMPTOMS
After working for a while, the SQL Debugger starts to skip breakpoints set
in SQL code.
The Event Viewer log on the server reveals the following error message:
CreateDispatch failed (Class not registered). Check to make sure
Automation manager is running on debugger machine.
CAUSE
There is a bug in Autprx32.dll (version 4.00.2415) that shipped with Visual
C++ Enterprise Edition, version 4.2, that causes leaks of thread local
storage indices each time it completes a load and unload cycle.
There is a per process limit of 64 thread local storage indices on
Windows NT.
While remote SQL debugging is in process, Autprx32.dll is loaded and
unloaded on the server. It is unloaded each time the number of remote
debugging sessions hits zero.
The debugger starts to skip breakpoints set in SQL code after approximately
25 load/unload cycles of Autprx32.dll.
RESOLUTION
To resolve this problem, stop and restart the SQL Server.
STATUS
Microsoft has confirmed this to be a bug in the Microsoft products listed
at the beginning of this article. This bug was corrected in Visual C++
version 5.0.
MORE INFORMATION
This problem only happens during remote debugging (when Visual C++ and SQL
Server reside on different computers). It doesn't happen during local
debugging (when Visual C++ and SQL Server reside on the same computer).
Additional query words: kbVC420bug kbDSupport
Keywords: kberrmsg kbbug kbfix kbsqlprog kbinterop kbeedition kbdebug KB158978