FIX: SQL Profiler May Cause Divide By Zero Exception

This article was previously published under Q198521
This article has been archived. It is offered "as is" and will no longer be updated.
BUG #: 53507 (SQLBUG_70)
SYMPTOMS
Under narrow, but unpredictable timing conditions, SQL Server mayexperience a divide by zero exception which causes the Sqlservr.exe processto stop. No new connections can be made, and current connections are unableto respond. The errorlog will contain a stack trace that contains thiserror:
Process <processno> generated fatal exception c000008e
EXCEPTION_FLT_DIVIDE_BY_ZERO.

This problem is more likely to occur when running SQL Server Profiler, but a study of the underlying failure mechanism indicates that it can theoretically happen when running other queries.
CAUSE
The problem is caused by a race condition when initializing a localvariable, so the exact circumstances cannot be predicted.
WORKAROUND
Before attaching SQL Server Profiler, run this query from any client session:
   set statistics time on   select 1   set statistics time off				
STATUS
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.
prodsql hang hung sql server profiler
Properties

Article ID: 198521 - Last Review: 10/11/2013 20:27:39 - Revision: 2.1

Microsoft SQL Server 7.0 Standard Edition

  • kbnosurvey kbarchive kbbug kbfix KB198521
Feedback