FIX: Loosely Coupled Events Do Not Handle Failed Subscribers Correctly (268856)
The information in this article applies to:
- Microsoft Windows 2000 Server
- Microsoft Windows 2000 Advanced Server
- Microsoft Windows 2000 Professional
- Microsoft COM+ 1.0
This article was previously published under Q268856 SYMPTOMS
If many transient subscriptions are present, and if some of the clients fail (crash) without unsubscribing, Orphaned Remote Transient subscription may corrupt the Event system. After a client fails (dies), it takes much longer to subscribe, unsubscribe, and fire an event. This time continually increases when more clients crash until the Event system is stopped and restarted. The following event is logged in the Event log:
Event Type: Error
Event Source: EventSystem
Event Category: Event Service
Event ID: 4097
Description:
The COM+ Event System detected a bad return code during its internal processing. HRESULT was 80070057 from line 55 of .\subscription.cpp. Please contact Microsoft Product Support Services to report this error.
CAUSE
When a transient subscription is created, COM+ stores an entry for the interface in the Global Interface Table (GIT). If that subscription is updated with a different interface, COM+ does not remove the old entry before it stores the new entry. This leads to memory leaks and, eventually, crashes.
RESOLUTIONTo 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
STATUSMicrosoft 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 2.
Modification Type: | Major | Last Reviewed: | 5/28/2003 |
---|
Keywords: | kbbug kberrmsg kbfix kbWin2000PreSP2Fix KB268856 |
---|
|