Microsoft KB Archive/164171

= BUG: dbprocerrhandle Does Not Get Fired For Error 10029 =

Article ID: 164171

Article Last Modified on 2/22/2005

-

APPLIES TO


 * Microsoft SQL Server 6.0 Standard Edition
 * Microsoft SQL Server 6.5 Standard Edition
 * Microsoft SQL Server 7.0 Standard Edition
 * Microsoft SQL Server 2000 Standard Edition

-



This article was previously published under Q164171



BUG #: 15697, 16582 (NT: 6.00, 6.50)



SYMPTOMS
The per process error handler does not get fired when the number of simultaneously open DBPROCESS structures exceeds the maximum number of simultaneously open DBPROCESS structures (25 by default or the number set by dbsetmaxprocs). The call to dbopen returns NULL as expected. In such a scenario, if a global error handler is installed, it gets fired to indicate error 10029 : Maximum number of DBPROCESSes already allocated.



WORKAROUND
Install the global error handler before the call to dbopen, and then install the per process error handler for each process.



STATUS
Microsoft has confirmed this to be a problem in SQL Server 6.0, 6.5, 7.0, and SQL 2000.



MORE INFORMATION
You will encounter this problem when the LOGINREC structure is passed to dbprocerrhandle. In other cases, where the DBPROCESS structure is passed to dbprocerrhandle, a global error handler should already be installed to take care of any error that may occur up until the dbopen call.

Keywords: kbbug kbpending kbusage KB164171

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.