Microsoft KB Archive/286565

= FIX: SQL Server Process Terminates Attempting to Reset from an sp_OA Based Batch =

Article ID: 286565

Article Last Modified on 10/9/2003

-

APPLIES TO


 * Microsoft SQL Server 2000 Standard Edition

-



This article was previously published under Q286565



BUG #: 351376 (SHILOH_BUGS)



SYMPTOMS
The SQL Server process may unexpectedly terminate while attempting a ResetFromBatch after performing sp_OA based activities. ResetFromBatch is an internal routine used by SQL Server to make sure that a server process ID (spid) has successfully completed the processing of the current batch and is set up to receive the next client request.

If this error occurs the following stack trace may be seen in the SQL Server error log: 77F97AC6 Module(ntdll+00017AC6) (ZwGetContextThread+0000000B) 009261F2 Module(sqlservr+005261F2) (ex_raise2(int,int,int,int,void *,char *)+000003F7) 00926302 Module(sqlservr+00526302) (ex_raisecontrol(class SQLError,...)+00000087) 00925A26 Module(sqlservr+00525A26) (ex_trans_cexcept(unsigned int,struct _EXCEPTION_POINTERS *)+000001FC) 7800AFC3 Module(MSVCRT+0000AFC3) (__CxxLongjmpUnwind+00000115) 7800A739 Module(MSVCRT+0000A739) (__unDNameEx+00004D0A) 7800A708 Module(MSVCRT+0000A708) (__unDNameEx+00004CD9) 7800A559 Module(MSVCRT+0000A559) (__unDNameEx+00004B2A) 7800AE9E Module(MSVCRT+0000AE9E) (__CxxFrameHandler+00000026) 77F92538 Module(ntdll+00012538) (RtlSetDaclSecurityDescriptor+00000174) 77F8AF89 Module(ntdll+0000AF89) (RtlConsoleMultiByteToUnicodeN+0000045C) 77F9FB9A Module(ntdll+0001FB9A) (KiUserExceptionDispatcher+0000000E) 22DF38FF Module(odsole70+000038FF) (CCachedTypeInfo::`scalar deleting destructor'(unsigned int)+0000000F) 22DF29DE Module(odsole70+000029DE) (CODSOLEThreadInfo::UnlinkCTypeInfo(class CCachedTypeInfo *)+00000046 Line 118+0000001C) 22DF27DD Module(odsole70+000027DD) (CODSOLEThreadInfo::~CODSOLEThreadInfo(void)+0000007A Line 41+0000000F) 22DF6BFF Module(odsole70+00006BFF) (CODSOLEThreadInfo::`scalar deleting destructor'(unsigned int)+0000000F) 22DF49EB Module(odsole70+000049EB) (OAUninitialize(void *)+0000003D Line 214+0000001C) 0086A624 Module(sqlservr+0046A624) (PSS::ResetFromBatch(class ExecutionContext *,struct srv_proc *)+00000020) 00459B11 Module(sqlservr+00059B11) (language_exec(struct srv_proc *)+000006BF) 004175D8 Module(sqlservr+000175D8) (process_commands(struct srv_proc *)+000000E0) 410735D0 Module(UMS+000035D0) (ProcessWorkRequests(class UmsWorkQueue *)+00000264) 4107382C Module(UMS+0000382C) (ThreadStartRoutine(void *)+000000BC) 7800BEA1 Module(MSVCRT+0000BEA1) (_beginthread+000000CE) 77E92CA8 Module(KERNEL32+00012CA8) (CreateFileA+0000011B)



CAUSE
The ResetFromBatch code line does not implement appropriate structured exception handling, which leads to an unhanded exception condition.



RESOLUTION
To resolve this problem, obtain the latest service pack for SQL Server 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

290211 INF: How to Obtain the Latest SQL Server 2000 Service Pack



WORKAROUND
Ensure that the COM objects that are used provide full TypeLib information. For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

282279 FIX: Execution of sp_OACreate on COM Object Without Type Information Causes Server Shut Down



STATUS
Microsoft has confirmed that this is a problem in SQL Server 2000. This problem was first corrected in SQL Server 2000 Service Pack 1.

Keywords: kbbug kbfix kbsqlserv2000sp1fix KB286565

-

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

© Microsoft Corporation. All rights reserved.