FIX: Windows 2000 Application Delay Occurs in Response to the Message Queuing Send Function (280087)
The information in this article applies to:
- Microsoft Message Queuing 2.0
This article was previously published under Q280087 SYMPTOMS
When you send messages to a remote computer and the network connection is lost, the application may have a 12 to 17 second delay in response to the Message Queuing send function.
CAUSE
Every five seconds, the MSMQ Queue Manager tries to reconnect to target computers that don't have a working TCP/IP session. If the target computer is unavailable, this connection attempt can be blocked. MSMQ uses a limited number of working threads to handle these network connections and local applications. There is no limit to the number of working threads to retry these connection attempts. This can lead to all worker threads being tied up in connection attempts, and there may be more than one worker thread attempting to connect to the same target computer.
On a computer running Microsoft Windows 2000 Professional, the number of worker threads is smaller than on a computer running Windows 2000 Server. The more limited thread pool on Windows 2000 Professional exposes the problem of exhausting the worker thread pool more quickly and more often.
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
The English version of this fix should have the following file attributes or later:
Date Time Version Size File name
-------------------------------------------------------
02/28/2001 17:54 5.0.0.720 273kb Mq1repl.dll
02/28/2001 17:47 5.0.0.720 14kb Mq1sync.dll
02/28/2001 17:47 5.0.0.733 70kb Mqac.sys
02/28/2001 17:54 5.0.0.721 210kb Mqads.dll
02/28/2001 17:47 5.0.0.720 22kb Mqbkup.exe
02/28/2001 17:54 5.0.0.720 29kb Mqcertui.dll
02/28/2001 17:54 5.0.0.720 49kb Mqclus.dll
02/28/2001 17:54 5.0.0.720 30kb Mqdbodbc.dll
02/28/2001 17:54 5.0.0.720 74kb Mqdscli.dll
02/28/2001 17:54 5.0.0.720 41kb Mqdssrv.dll
02/28/2001 17:47 5.0.0.720 96kb Mqmig.exe
02/28/2001 17:54 5.0.0.720 258kb Mqmigrat.dll
02/28/2001 17:54 5.0.0.720 219kb Mqoa.dll
02/28/2001 17:54 5.0.0.720 8kb Mqperf.dll
02/28/2001 17:54 5.0.0.733 406kb Mqqm.dll
02/28/2001 17:54 5.0.0.720 9kb Mqrperf.dll
02/28/2001 17:54 5.0.0.733 90kb Mqrt.dll
02/28/2001 17:54 5.0.0.720 69kb Mqsec.dll
02/28/2001 17:54 5.0.0.720 391kb Mqsnap.dll
02/28/2001 17:48 5.0.0.720 14kb Mqsvc.exe
02/28/2001 17:54 5.0.0.720 24kb Mqupgrd.dll
02/28/2001 17:54 5.0.0.720 106kb Mqutil.dll
02/28/2001 17:54 5.0.0.720 64kb Msmq.cpl
02/28/2001 17:54 5.0.0.720 156kb Msmqocm.dll
STATUSMicrosoft has confirmed that this is a problem in MSMQ, version 2.0. This problem was first corrected in Windows 2000 Service Pack 3.MORE INFORMATION
This fix corrects the problem by limiting only one thread (at most) to try to connect to same target at the same time.
In addition, it reserves one thread for servicing requests that are needed for local applications.
One possible workaround is to increase this thread pool by increasing the QMThreadNo registry value. This registry value is documented in the Registry Reference help file in the Windows 2000 Resource Kit.
Modification Type: | Minor | Last Reviewed: | 9/26/2005 |
---|
Keywords: | kbHotfixServer kbQFE kbbug kbfix kbWin2000sp3fix KB280087 |
---|
|