BUG: Multiple threads Cause Connection Busy Error in the Driver (175904)



The information in this article applies to:

  • Microsoft SQL Server 6.5
  • Microsoft Open Database Connectivity 2.5
  • Microsoft Open Database Connectivity 3.0

This article was previously published under Q175904
BUG #: 17322 (6.50)

SYMPTOMS

Multiple threads, each allocating its own HSTMT using server cursors (active statements) sharing a single connection, cause the following error on prepared execution of a SQL statement:
S1000: [Microsoft][ODBC SQL Server Driver] Connection is busy with results for another hstmt

WORKAROUND

To work around this problem, use SQLExecDirect statements instead of SQLPrepare and SQLExecute when using multiple active HSTMTs (on different threads) and server cursors.

STATUS

Microsoft has confirmed this to be a problem in SQL Server version 6.5 and Open Database Connectivity version 3.0. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

Modification Type:MajorLast Reviewed:5/20/2003
Keywords:kbBug kbinterop KB175904