FIX: Concurrent Create and Drop of Stored Procedures May Cause Error 707

ID: Q194662


The information in this article applies to:

BUG #: 17134 (SQLBUG_65)

SYMPTOMS

If multiple connections are simultaneously creating and dropping stored procedures, an error 707 may be generated and SQL Server may appear to stop responding (hang). However, the SQL Server process is actually in a CPU- intensive loop and the system will return to normal within a few minutes.

Msg 707: System error detected during attempt to free memory at address 0x1a99000. Please consult the SQL Server error log for more details.
A typical situation in which this might occur is when an ODBC-based application which is calling SQLPrepare() has also selected the option to create temporary stored procedures. These stored procedures are usually dropped when the connection is closed, but may also be dropped when the ODBC statement handle is closed, if the option is set to SQL_UP_ON_DROP. For additional information about prepared statements, please see the following article in the Microsoft Knowledge Base:
Q151536 INF: SQLPrepare and Temporary Stored Procedures in SQL Server


WORKAROUND

To avoid this problem, minimize the number of times that procedures are created and dropped by either disabling the option to generate temporary stored procedures for prepared statements, or by dropping the procedures only when the connection is closed.


STATUS

Microsoft has confirmed this to be a problem in SQL Server version 6.5. This problem has been corrected in U.S. Service Pack 5a for Microsoft SQL Server version 6.5. For information about downloading and installing the latest SQL Server Service Pack, see http://support.microsoft.com/support/sql/.

For more information, contact your primary support provider.

Additional query words: sp sp5prodsql cpu spike errorlog


Keywords          : SSrvErr_Log SSrvProg SSrvTran_SQL kbbug6.50 kbfix6.50.SP5 
Version           : winnt:6.5
Platform          : winnt 
Issue type        : kbbug 

Last Reviewed: May 4, 1999