Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

MSMQ send in Windows 7 or Windows Server 2008 R2 experience delay when messages are sent to multiple destinations, some of which are unreachable.


View products that this article applies to.

Symptoms

Consider the following scenario:
  • You install Microsoft Windows Message Queuing (also known as MSMQ) on a computer that is running Windows 7 or Windows Server 2008 R2.
  • You send messages to message queues on many Message Queuing clients and some of the clients are not reachable either due to network issues or the machine is offline or queue not present etc.
In this scenario, Message Queuing takes a long time to finish sending the messages to the clients.

↑ Back to the top


Cause

This issue occurs because Message Queuing cannot connect to all remote clients at the same time.

1.       Initially all the messages submitted for send are put in a common queue for send. Messages are picked up from this queue one by for send.

2.       When the destination for a message is tried for connection, MSMQ waits until success/failure for that connection attempt is returned. In parallel, no attempt is made for connecting other destinations piped, as messages are processed sequentially by sender from that queue. This is mainly done in order to avoid the situation when multiple parallel attempts are made to connect to same destination.

3.       If the sender machine is not able to connect to the destination machine due to any reason, failure is returned for that destination and that destination is scheduled to be retried on a timer. Only after this next message in pipe is tried.

4.       In case of connect failure, it takes around 21 seconds(TCP retry timeout) between connection attempt start and failure return.

Due to the above scenario, messages piped in the common queue lined behind messages with unreachable destinations are not able to connect and delay is seen. This is only seen on very first connection attempt. Once the first connect attempt fails for a given destination, retry for that destination is made on retry timer. On retry, multiple destinations are retried in parallel.

↑ Back to the top


Resolution

Hotfix information

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing the problem described in this article. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft website: Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

To apply this hotfix, you must be running Windows 7 Service Pack 1 (SP1) or Windows Server 2008 R2 Service Pack 1 (SP1). Additionally, you must have Message Queuing installed.

For more information about how to obtain a Windows 7 or Windows Server 2008 R2 service pack, click the following article number to view the article in the Microsoft Knowledge Base:

976932 Information about Service Pack 1 for Windows 7 and for Windows Server 2008 R2

Registry information

To apply the hotfix in this package, you have to make changes to the following registry.

Registry: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\Parameters\DeferFirstConnectAttempt

Reg Type:DWORD

Default: 0

Description: Change this registry value to 1 in order to enable the fix which will avoid the first connection attempt where the delay happens and move directly to retry logic.

Restart requirement

You must restart the computer after you apply this hotfix.

Hotfix replacement information

This hotfix does not replace a previously released hotfix.

File information

The global version of this hotfix installs files that have the attributes that are listed in the following tables. The dates and the times for these files are listed in Coordinated Universal Time (UTC). The dates and the times for these files on your local computer are displayed in your local time together with your current daylight saving time (DST) bias. Additionally, the dates and the times may change when you perform certain operations on the files.
Windows 7 and Windows Server 2008 R2 file information notes
Important Windows 7 hotfixes and Windows Server 2008 R2 hotfixes are included in the same packages. However, hotfixes on the Hotfix Request page are listed under both operating systems. To request the hotfix package that applies to one or both operating systems, select the hotfix that is listed under "Windows 7/Windows Server 2008 R2" on the page. Always refer to the "Applies To" section in articles to determine the actual operating system that each hotfix applies to.
  • The files that apply to a specific product, milestone (RTM, SPn), and service branch (LDR, GDR) can be identified by examining the file version numbers as shown in the following table:
    VersionProductMilestoneService branch
    6.1.760
    1.21xxx
    Windows 7 and Windows Server 2008 R2SP1LDR
  • The MANIFEST files (.manifest) and the MUM files (.mum) that are installed for each environment are listed separately in the "Additional file information for Windows 7 and for Windows Server 2008 R2" section. MUM and MANIFEST files, and the associated security catalog (.cat) files, are critical to maintaining the state of the updated component. The security catalog files, for which the attributes are not listed, are signed with a Microsoft digital signature.
For all supported x86-based versions of Windows 7
File nameFile versionFile sizeDateTimePlatform
Mqqm.dll6.1.7601.21938934,40008-Mar-201205:30x86
For all supported x64-based versions of Windows 7 and of Windows Server 2008 R2
File nameFile versionFile sizeDateTimePlatform
Mqqm.dll6.1.7601.219381,517,56808-Mar-201206:16x64
For all supported IA-64-based versions of Windows Server 2008 R2
File nameFile versionFile sizeDateTimePlatform
Mqqm.dll6.1.7601.219383,014,65608-Mar-201205:16IA-64

↑ Back to the top


Status

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

↑ Back to the top


More Information

For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates

Additional file information

Additional file information for Windows 7 and for Windows Server 2008 R2

Additional files for all supported x86-based versions of Windows 7
File nameUpdate.mum
File versionNot applicable
File size1,795
Date (UTC)08-Mar-2012
Time (UTC)12:17
PlatformNot applicable
File nameX86_fd1e1077d259d9647201d4d2f9abb24e_31bf3856ad364e35_6.1.7601.21938_none_76de177aa83d6e10.manifest
File versionNot applicable
File size710
Date (UTC)08-Mar-2012
Time (UTC)12:17
PlatformNot applicable
File nameX86_microsoft-windows-msmq-queuemanager-core_31bf3856ad364e35_6.1.7601.21938_none_8237515cd705f2b3.manifest
File versionNot applicable
File size2,742
Date (UTC)08-Mar-2012
Time (UTC)06:20
PlatformNot applicable
Additional files for all supported x64-based versions of Windows 7 and of Windows Server 2008 R2
File nameAmd64_15a84bd42edeb264ea86b5141837037d_31bf3856ad364e35_6.1.7601.21938_none_2ad45ee45685f58f.manifest
File versionNot applicable
File size714
Date (UTC)08-Mar-2012
Time (UTC)12:17
PlatformNot applicable
File nameAmd64_microsoft-windows-msmq-queuemanager-core_31bf3856ad364e35_6.1.7601.21938_none_de55ece08f6363e9.manifest
File versionNot applicable
File size2,746
Date (UTC)08-Mar-2012
Time (UTC)06:52
PlatformNot applicable
File nameUpdate.mum
File versionNot applicable
File size2,008
Date (UTC)08-Mar-2012
Time (UTC)12:17
PlatformNot applicable
Additional files for all supported IA-64-based versions of Windows Server 2008 R2
File nameIa64_bd8796e5ce0f70f3cf8602c204fe87b1_31bf3856ad364e35_6.1.7601.21938_none_3995f76da102e484.manifest
File versionNot applicable
File size712
Date (UTC)08-Mar-2012
Time (UTC)12:17
PlatformNot applicable
File nameIa64_microsoft-windows-msmq-queuemanager-core_31bf3856ad364e35_6.1.7601.21938_none_8238f552d703fbaf.manifest
File versionNot applicable
File size2,744
Date (UTC)08-Mar-2012
Time (UTC)06:54
PlatformNot applicable
File nameUpdate.mum
File versionNot applicable
File size1,453
Date (UTC)08-Mar-2012
Time (UTC)12:17
PlatformNot applicable

↑ Back to the top


Keywords: kb, kbautohotfix, kbqfe, kbhotfixserver, kbfix, kbexpertiseadvanced, kbsurveynew

↑ Back to the top

Article Info
Article ID : 2656875
Revision : 3
Created on : 9/20/2018
Published on : 9/21/2018
Exists online : False
Views : 283