Article ID: 829159 - View products that this article applies to.
This article has been archived. It is offered "as is" and will no longer be updated.
When the ODBC driver closes its connections, the Mtxoci.dll module of the Microsoft Distributed Transaction Coordinator (MSDTC) can leak threads. For example, you may find hundreds of the following threads in the Microsoft SQL Server process:
ChildEBP RetAddr 044ffef0 77e56a15 ntdll!ZwWaitForSingleObject+0xb 044fff18 77e56a3d KERNEL32!WaitForSingleObjectEx+0x71 044fff28 066ba975 KERNEL32!WaitForSingleObject+0xf 044fff48 066c0e5b MTXOCI!COCIConnection::FactotumSink+0x45 044fff68 066c0e21 MTXOCI!CFactotum::ServicingState+0x1b 044fff78 066c070c MTXOCI!CFactotum::ThreadMain+0x21 044fff80 7800a27b MTXOCI!ThreadRoutine+0xc 044fffb4 77e5758a MSVCRT!_threadstart+0x57 044fffec 00000000 KERNEL32!BaseThreadStart+0x52
When the MSDTC XA Transaction Manager disconnects from the database while active transactions exist, an internal reference countering problem may cause the internal service threads inside the Mtxoci.dll module to remain in service.
How to obtain the hotfixThis issue is fixed in the Windows 2000 Server COM+ 1.0 Hotfix Package 28. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
(https://support.microsoft.com/kb/828748/ )FIX: Availability of Windows 2000 Post-Service Pack 4 COM+ 1.0 Hotfix Rollup Package 28
Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section of this article.