Microsoft Knowledge Base Email Alertz

KBAlertz.com: FIX: A gradual reduction in system performance occurs when you run a .NET Framework 1.1 application that uses COM+ components and the common language runtime

Receive Microsoft Knowledge Base articles by E-Mail?

Every night we scan the Microsoft Knowledge Base. If technologies you're interested in are updated, we'll send you an e-mail. You only get one e-mail a day, and only when new articles are added.

Click here to create a
FREE account
Already have an account?
[Click here to Login]

Search KbAlertz

Advanced Search

Webmasters
Put kbAlertz on your website.
[ Click Here for more! ]





ASP.NET 3.5 Web Hosting with Windows 2008 and SQL 2008: Click Here!
Discount ASP.NET Hosting
ASP.NET 2.0 and 3.5
Windows2008 and SQL2008
US and UK Hosting
The ad says 3 - but KBAlertz referrals get
** SIX MONTHS FREE **


Bug Tracking Software
For bug tracking software or defect tracking software or issue tracking software, visit Axosoft.


Community Site



We Send hundreds of thousands of emails using ASP.NET Email



Expert Web Design & Graphic Design
Design44.com

ASP.NET 3.5 Web Hosting with Windows 2008 and SQL 2008: Click Here!
Discount ASP.NET Hosting
ASP.NET 2.0 and 3.5
Windows2008 and SQL2008
US and UK Hosting
The ad says 3 - but KBAlertz referrals get
** SIX MONTHS FREE **




Mentioned In








Microsoft Knowledge Base Article

This article contents is Microsoft Copyrighted material.
©2005-©2007 Microsoft Corporation. All rights reserved. Terms of Use | Trademarks




Article ID: 904646 - Last Review: August 28, 2006 - Revision: 1.4

FIX: A gradual reduction in system performance occurs when you run a .NET Framework 1.1 application that uses COM+ components and the common language runtime

On This Page

SYMPTOMS

When you run a Microsoft .NET Framework 1.1 application that uses Microsoft COM+ components, you may notice a gradual reduction in system performance.

This problem occurs when the following conditions are true:
  • The application uses the common language runtime (CLR).
  • The application makes extensive use of Microsoft Component Object Model (COM) objects that are hosted on a remote server.
Note If you monitor CPU utilization, you notice the following behavior:
  • CPU utilization on the server increases approximately every two minutes.
  • The increase in CPU utilization appears to be associated with the Svchost.exe process that hosts the Rpcss service.
  • Increased memory consumption is associated with the process that hosts the COM objects.

CAUSE

This problem occurs because of the way that the .NET Framework 1.1 manages references to COM objects. In certain high-load applications, many unreleased COM references may accumulate. If the unreleased COM references are related to objects, and these objects are hosted on a remote server by using the DCOM protocol, the remote server must query clients every two minutes to determine whether the objects are regularly referenced. The .NET garbage collector cannot detect unreleased references on the remote server and does not account for the unmanaged memory that is allocated by COM objects.

RESOLUTION

Hotfix rollup information

To resolve this problem, install the hotfix rollup that is described in the following Microsoft Knowledge Base article:
890340  (http://kbalertz.com/Feedback.aspx?kbNumber=890340/ ) Availability of the .NET Framework 1.1 post-Service Pack 1 hotfix rollup for MsCorLib.dll, for MsCorSvr.dll, and for MsCorWks.dll
For this hotfix to function correctly, you may also have to apply one of the following hotfixes.

Microsoft Windows 2000

To resolve this problem in Microsoft Windows 2000, apply the hotfix that is described in the following Microsoft Knowledge Base article:
888000  (http://kbalertz.com/Feedback.aspx?kbNumber=888000/ ) Availability of Windows 2000 Post-Service Pack 4 COM+ 1.0 Hotfix Rollup Package 31

Microsoft Windows XP Service Pack 1 or in Windows XP

To resolve this problem in Windows XP Service Pack 1 (SP1) or in Windows XP, apply the hotfix that is described in the following Microsoft Knowledge Base article:
895200  (http://kbalertz.com/Feedback.aspx?kbNumber=895200/ ) Availability of Windows XP COM+ Hotfix Rollup Package 9

Microsoft Windows XP Service Pack 2

This hotfix is already included with Microsoft Windows XP Service Pack 2 (SP2). For more information, click the following article number to view the article in the Microsoft Knowledge Base:
838211  (http://kbalertz.com/Feedback.aspx?kbNumber=838211/ ) List of Com+ fixes in Windows XP Service Pack 2 and in Windows XP Tablet PC Edition 2005

Microsoft Windows XP Tablet PC Edition 2005

This hotfix is already included with Microsoft Windows XP Tablet PC Edition 2005. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
838211  (http://kbalertz.com/Feedback.aspx?kbNumber=838211/ ) List of Com+ fixes in Windows XP Service Pack 2 and in Windows XP Tablet PC Edition 2005

Microsoft Windows Server 2003

To resolve this problem in Microsoft Windows Server 2003, apply the hotfix that is described in the following Microsoft Knowledge Base article:
895250  (http://kbalertz.com/Feedback.aspx?kbNumber=895250/ ) Availability of Windows Server 2003 COM+ 1.5 Rollup Package 4

Microsoft Windows Server 2003 Service Pack 1

This software update is already included with Microsoft Windows Server 2003 Service Pack 1 (SP1).

WORKAROUND

To work around this problem, explicitly release each COM reference. To do this, use the Marshal.ReleaseComObject method until the ReleaseComObject method returns 0.

Note It can be difficult and time-consuming to systematically use the Marshal.ReleaseComObject method on every managed reference to a COM object. You can also use the GC.Collect method and the GC.WaitForPendingFinalizers method to force early collection of COM references. However, this technique degrades application performance most of the time. Therefore, we do not recommend this technique.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

MORE INFORMATION

For more information, click the following article number to view the article in the Microsoft Knowledge Base:
824684  (http://kbalertz.com/Feedback.aspx?kbNumber=824684/ ) Description of the standard terminology that is used to describe Microsoft software updates

APPLIES TO
  • Microsoft .NET Framework 1.1
Keywords: 
kbbug kbnetframe110presp1fix kbpubtypekc kbqfe kbfix KB904646
       

Community Feedback System

Very often, it takes hours to solve a problem. Very often, you've looked high and low, and have tried a lot of solutions. When you finally found it, chances are, it was because someone else helped you. Here's your chance to give back. Use our community feedback tool to let others know what worked for you and what didn't.

Please also understand that the community feedback system is not warranted to be correct, it's simply a system that we've built to let people try and help each other. If something in a feedback response doesn't make sense to you, or you're not comfortable making changes that the feedback talks about (like registry edits), please consult a professional.

Thank you for using kbAlertz.com Feedback System.

-- Scott Cate

Be the first to leave feedback, to help others about this knowledge base article.

(Optional) Name

(Optional) Public URL Or Email

Comments
No HTML -- Text Only Please