Article ID: 909289 - Last Review: December 3, 2007 - Revision: 2.8

You may receive “Out of memory” error messages when you run a multithreaded program that uses the IIS ADSI provider on a Windows Server 2003 SP1-based computer

On This Page

Expand all | Collapse all

SYMPTOMS

When you run a multithreaded program that uses the Microsoft Internet Information Services (IIS) Active Directory Service Interfaces (ADSI) provider on a Microsoft Windows Server 2003 Service Pack 1 (SP1)-based computer, the multithreaded program may fail and you may receive “Out of memory” error messages.

Additionally, a handle leak may occur in the Inetinfo.exe process. When you view the Inetinfo.exe process in Process Explorer, you will find that process handles for the calling process are allocated but never be freed.

CAUSE

This problem occurs because information that is cached by the ADSI provider (Adsiis.dll) is flushed without synchronizing the operation across all threads.

The ADSI provider has a per-thread information cache. A Component Object Model (COM) program calls the DLLCanUnloadNow function in the ADSI provider periodically. When the DLLCanUnloadNow function is called by the COM program, information that is cached by the ADSI provider is flushed after a second thread confirms cache initialization, but before the thread tries to use the information cache. When this occurs, you experience the problem that is mentioned in the “Symptoms” section.

RESOLUTION

Service pack information

To resolve this problem, obtain the latest service pack for Windows Server 2003. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
889100  (http://support.microsoft.com/kb/889100/ ) How to obtain the latest service pack for Windows Server 2003

Hotfix information

Prerequisites

To apply this hotfix, you must have Windows Server 2003 SP1 installed on the computer.

Restart requirement

You must restart the computer after you apply this hotfix.

Hotfix replacement information

This hotfix does not replace any other hotfixes.

File information

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
Windows Server 2003, x86-based versions
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Adsiis.dll6.0.3790.2548291,32814-Oct-200504:52x86
Windows Server 2003, Itanium-based versions
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatformSP requirementService branch
Adsiis.dll6.0.3790.2548585,21613-Oct-200517:12IA-64SP1SP1QFE
Wadsiis.dll6.0.3790.2548291,32813-Oct-200517:12x86SP1WOW
Windows Server 2003. x64-based versions
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatformSP requirementService branch
Adsiis.dll6.0.3790.2548391,16813-Oct-200517:12x64SP1SP1QFE
Wadsiis.dll6.0.3790.2548291,32813-Oct-200517:12x86SP1WOW

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section. This problem was first corrected in Windows Server 2003 Service Pack 2.

MORE INFORMATION

The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, about the performance or reliability of these products.
To obtain Process Explorer, visit the following Sysinternals Web site:

http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx (http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx)

For more information, click the following article number to view the article in the Microsoft Knowledge Base:
913644  (http://support.microsoft.com/kb/913644/ ) FIX: The W3wp.exe process stops responding when you run an out-of-process COM+ application on a Windows Server 2003 S-based computer
For more information about the description of the standard terminology that is used to describe Microsoft software updates , click the following article number to view the article in the Microsoft Knowledge Base:
824684  (http://support.microsoft.com/kb/824684/ ) Description of the standard terminology that is used to describe Microsoft software updates

Technical support for x64-based versions of Microsoft Windows

Your hardware manufacturer provides technical support and assistance for x64-based versions of Windows. Your hardware manufacturer provides support because an x64-based version of Windows was included with your hardware. Your hardware manufacturer might have customized the installation of Windows with unique components. Unique components might include specific device drivers or might include optional settings to maximize the performance of the hardware. Microsoft will provide reasonable-effort assistance if you need technical help with your x64-based version of Windows. However, you might have to contact your manufacturer directly. Your manufacturer is best qualified to support the software that your manufacturer installed on the hardware.

For product information about Microsoft Windows XP Professional x64 Edition, visit the following Microsoft Web site:
http://www.microsoft.com/windowsxp/64bit/default.mspx (http://www.microsoft.com/windowsxp/64bit/default.mspx)
For product information about x64-based versions of Microsoft Windows Server 2003, visit the following Microsoft Web site:
http://www.microsoft.com/windowsserver2003/64bit/x64/editions.mspx (http://www.microsoft.com/windowsserver2003/64bit/x64/editions.mspx)

APPLIES TO
  • Microsoft Internet Information Services 6.0, when used with:
    • Microsoft Windows Server 2003 Service Pack 1
Keywords: 
kbtshoot kbbug kbfix kbqfe kbpubtypekc kbwinserv2003presp1fix kbhotfixserver kbwinserv2003sp2fix KB909289
 

Article Translations

 

Related Support Centers