FIX: A COM+ Server Polling Failure May Block CLB for Entire Cluster (299833)



The information in this article applies to:

  • Microsoft Application Center 2000

This article was previously published under Q299833

SYMPTOMS

If a COM+ server that is using Component Load Balancing (CLB) fails to respond to CLB polling, new instantiation requests on components that are configured for dynamic load balancing and that are destined for failed COM+ servers may block until DCOM times out. Furthermore, in high-stress environments, all new instantiation requests may eventually block. This behavior may persist for about 20 seconds. After this delay, CLB resumes normal operation.

NOTE: When a COM+ server that is using CLB fails to respond to CLB polling, existing instantiations of components on that server block until DCOM times out and may not recover.

CAUSE

When a COM+ server that is using CLB fails to respond to CLB polling, the CLB polling thread waits for the response and is unable to update the routing list of COM+ servers. This results in a static routing list of COM+ servers. New instantiation requests on components that are configured for dynamic load balancing "round robin" through the routing list, which includes the failed COM+ server or servers. Each new instantiation request that is destined for a failed COM+ server blocks a thread until DCOM times out on the COM+ routing server or servers. In high-stress environments, this behavior may eventually consume all available threads on the COM+ routing server or servers, resulting in a failure to load balance COM+ components. This condition lasts until the blocked CLB polling thread times out and updates the CLB routing list (approximately 20 seconds). After the CLB routing list is updated, CLB resumes normal operation with all new instantiation requests routed to the remaining active COM+ servers.

RESOLUTION

To resolve this problem, upgrade to Application Center 2000 Service Pack (SP) 1. For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

309384 INFO: How to Obtain the Latest Application Center 2000 Service Pack

STATUS

Microsoft has confirmed that this is a bug in Application Center 2000.

This bug was corrected in Application Center 2000 Service Pack 1.

MORE INFORMATION

Fixed Behavior

If a COM+ server that is using CLB fails to respond to CLB polling, existing instantiations of components that are configured for dynamic load balancing may stop responding (hang) and may not recover unless the COM+ server that experienced the failure recovers.

If a COM+ server that is using CLB fails to respond to CLB polling, it is dropped from the routing list at the end of the next polling interval and new instantiation requests are routed to the remaining active COM+ servers.

Modification Type:MinorLast Reviewed:9/26/2005
Keywords:kbHotfixServer kbQFE kbbug kbfix KB299833