Microsoft KB Archive/301377

= COM+ Application That Uses Visual J++ Components May Deadlock =

Article ID: 301377

Article Last Modified on 6/5/2003

-

APPLIES TO


 * Microsoft COM+ 1.0, when used with:
 * Microsoft Windows 2000 Standard Edition

-



This article was previously published under Q301377



SYMPTOMS
If a COM+ application uses components that are written in Microsoft Visual J++, the COM+ application may experience a deadlock. You may notice this problem when clients call the application, and there is no response. In the Status view of the COM+ Microsoft Management Console (MMC) snap-in, several objects may appear active and in-call, and the call time may grow continuously.

To distinguish this deadlock from other deadlocks, attach a debugger (such as WinDbg.exe) to the Dllhost.exe process for the application. If you resolve the symbols for the process correctly, multiple threads will have call stacks similar to the following:

015dea94 77e8366e ntdll!_ZwWaitForMultipleObjects+0xb 015deae4 77e260f8 KERNEL32!WaitForMultipleObjectsEx+0xea 015deb40 77aa9460 USER32!MsgWaitForMultipleObjectsEx+0x153 015deb68 77aaa570 ole32!CCliModalLoop__BlockFn+0x79 015debcc 695378bc ole32!CoWaitForMultipleHandles+0xee 015dec28 69537544 COMSVCS!CActivity__EnterActivity+0x1be 015dec38 77aa7ab9 COMSVCS!CActivity__Enter+0x14

NOTE: When you use a debugger to examine a process at any given moment, the process under load may display multiple threads that are waiting as a result of calls to CActivity__Enter. This behavior can be normal.

An application may encounter a deadlock because of other reasons (for example, because of database deadlocks). To ensure that you are encountering this particular deadlock, follow these steps:
 * 1) Examine the deadlock under the debugger.
 * 2) Notice the threads that are waiting, and then continue to debug.
 * 3) Run the program, and then examine the threads again.

If the same threads still appear blocked, you may be encountering this particular deadlock.



RESOLUTION
To resolve this problem, obtain Microsoft COM+ Hotfix Rollup 14. For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

302845 INFO: Availability of Windows 2000 Post-Service Pack 2 COM+ Hotfix Rollup Package 14

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

260910 How to Obtain the Latest Windows 2000 Service Pack



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Windows 2000 Service Pack 3.



MORE INFORMATION
For additional information about how to install Windows 2000 and Windows 2000 hotfixes at the same time, click the article number below to view the article in the Microsoft Knowledge Base:

249149 Installing Microsoft Windows 2000 and Windows 2000 Hotfixes

For additional information about how to obtain a hotfix for Windows 2000 Datacenter Server, click the article number below to view the article in the Microsoft Knowledge Base:

265173 The Datacenter Program and Windows 2000 Datacenter Server Product

For additional information about how to install multiple hotfixes with only one reboot, click the article number below to view the article in the Microsoft Knowledge Base:

296861 Use QChain.exe to Install Multiple Hotfixes with One Reboot

Additional query words: kbIISCom kbWin2000preSP3COM+Rollup14Fix java components

Keywords: kbbug kbfix kbwin2000presp3fix kbwin2000sp3fix KB301377

-

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

© Microsoft Corporation. All rights reserved.