FIX: A Message Queuing 3.0 message may not be acknowledged

Article translations Article translations
Article ID: 902951 - View products that this article applies to.
This article has been archived. It is offered "as is" and will no longer be updated.
Expand all | Collapse all

On This Page

Symptoms

When you send a Microsoft Message Queuing 3.0 message between two servers that are running Microsoft Windows Server 2003 with Service Pack (SP1), the message may not be acknowledged. The receiving server seems to be unable to store the incoming message.

Specifically, the following problems occur:
  • The sending server keeps sending a transactional message after the 30-second default resend interval. The sending server does not increment the order acknowledgement.
  • The receiving server returns the same order acknowledgement and seems to be unable to store the message for unknown reasons.
  • The sending server closes the connection and then reconnects. However, the sending server never tries to resend the message.

Cause

This problem occurs because of a race condition. A token is used to identify the location of a message in the message list. The race condition allows for this token to be reused for a new message before the old message is removed from the list.

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 How to obtain the latest service pack for Windows Server 2003

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 this specific problem. 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 Web site:
http://support.microsoft.com/contactus/?ws=support
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

You must install Windows Server 2003 SP1 before you apply this hotfix.

Restart requirement

You must restart the computer if the files that are being updated are running when 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 tool in Control Panel.
Windows Server 2003 for x86-based systems
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Mqac.sys5.2.1918.255484,48022-Oct-200504:24x86
Mqad.dll5.2.1918.2554155,13622-Oct-200509:58x86
Mqads.dll5.2.1918.2554200,70422-Oct-200509:58x86
Mqbkup.exe5.2.1918.255430,20822-Oct-200504:25x86
Mqcertui.dll5.2.1918.25549,72822-Oct-200509:58x86
Mqclus.dll5.2.1918.255477,82422-Oct-200509:58x86
Mqdscli.dll5.2.1918.255449,66422-Oct-200509:58x86
Mqdssrv.dll5.2.1918.255451,71222-Oct-200509:58x86
Mqdssvc.exe5.2.1918.255467,58422-Oct-200504:25x86
Mqgentr.dll5.2.1918.255445,05622-Oct-200509:58x86
Mqise.dll5.2.1918.255429,18422-Oct-200509:58x86
Mqlogmgr.dll2001.12.4720.255475,26422-Oct-200509:58x86
Mqoa.dll5.2.1918.2554240,64022-Oct-200509:58x86
Mqperf.dll5.2.1918.255414,33622-Oct-200509:58x86
Mqqm.dll5.2.1918.2554834,56022-Oct-200512:46x86
Mqrt.dll5.2.1918.2554180,73622-Oct-200509:58x86
Mqrtdep.dll5.2.1918.2554125,44022-Oct-200509:58x86
Mqsec.dll5.2.1918.2554142,33622-Oct-200509:58x86
Mqsnap.dll5.2.1918.2554540,16022-Oct-200509:58x86
Mqsvc.exe5.2.1918.25546,14422-Oct-200504:25x86
Mqtgclus.dll5.2.1918.255431,74422-Oct-200509:58x86
Mqtgsvc.exe5.2.1918.255486,52822-Oct-200504:25x86
Mqtrig.dll5.2.1918.2554140,28822-Oct-200509:58x86
Mqupgrd.dll5.2.1918.255454,78422-Oct-200509:58x86
Msmqocm.dll5.2.1918.2554250,36822-Oct-200509:58x86
Windows Server 2003 x64 editions
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Mqac.sys5.2.1918.2554154,11222-Oct-200513:00x64
Mqad.dll5.2.1918.2554372,73622-Oct-200513:00x64
Mqads.dll5.2.1918.2554385,02422-Oct-200513:00x64
Mqbkup.exe5.2.1918.255447,61622-Oct-200513:00x64
Mqcertui.dll5.2.1918.255413,82422-Oct-200513:00x64
Mqclus.dll5.2.1918.2554133,12022-Oct-200513:00x64
Mqdscli.dll5.2.1918.255476,28822-Oct-200513:00x64
Mqdssrv.dll5.2.1918.255495,23222-Oct-200513:00x64
Mqdssvc.exe5.2.1918.2554119,80822-Oct-200513:00x64
Mqgentr.dll5.2.1918.255473,21622-Oct-200513:00x64
Mqise.dll5.2.1918.255443,00822-Oct-200513:00x64
Mqlogmgr.dll2001.12.4720.2554125,95222-Oct-200513:00x64
Mqoa.dll5.2.1918.2554363,00822-Oct-200513:00x64
Mqperf.dll5.2.1918.255419,45622-Oct-200513:00x64
Mqqm.dll5.2.1918.25541,721,85622-Oct-200513:00x64
Mqrt.dll5.2.1918.2554314,88022-Oct-200513:00x64
Mqrtdep.dll5.2.1918.2554209,40822-Oct-200513:00x64
Mqsec.dll5.2.1918.2554259,58422-Oct-200513:00x64
Mqsnap.dll5.2.1918.2554945,15222-Oct-200513:00x64
Mqsvc.exe5.2.1918.25548,19222-Oct-200513:00x64
Mqtgclus.dll5.2.1918.255444,03222-Oct-200513:00x64
Mqtgsvc.exe5.2.1918.2554180,22422-Oct-200513:00x64
Mqtrig.dll5.2.1918.2554281,08822-Oct-200513:00x64
Mqupgrd.dll5.2.1918.255495,74422-Oct-200513:00x64
Msmqocm.dll5.2.1918.2554419,32822-Oct-200513:00x64
Windows Server 2003 for Itanium-based systems
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Mqac.sys5.2.1918.2554297,47222-Oct-200512:57IA-64
Mqad.dll5.2.1918.2554521,72822-Oct-200512:57IA-64
Mqads.dll5.2.1918.2554658,43222-Oct-200512:57IA-64
Mqbkup.exe5.2.1918.255485,50422-Oct-200512:57IA-64
Mqcertui.dll5.2.1918.255428,67222-Oct-200512:57IA-64
Mqclus.dll5.2.1918.2554237,05622-Oct-200512:57IA-64
Mqdscli.dll5.2.1918.2554134,14422-Oct-200512:57IA-64
Mqdssrv.dll5.2.1918.2554133,63222-Oct-200512:57IA-64
Mqdssvc.exe5.2.1918.2554230,40022-Oct-200512:57IA-64
Mqgentr.dll5.2.1918.2554145,92022-Oct-200512:57IA-64
Mqise.dll5.2.1918.255487,04022-Oct-200512:57IA-64
Mqlogmgr.dll2001.12.4720.2554228,35222-Oct-200512:57IA-64
Mqoa.dll5.2.1918.2554660,99222-Oct-200512:57IA-64
Mqperf.dll5.2.1918.255435,84022-Oct-200512:57IA-64
Mqqm.dll5.2.1918.25542,902,01622-Oct-200512:57IA-64
Mqrt.dll5.2.1918.2554553,98422-Oct-200512:57IA-64
Mqrtdep.dll5.2.1918.2554380,41622-Oct-200512:57IA-64
Mqsec.dll5.2.1918.2554463,87222-Oct-200512:57IA-64
Mqsnap.dll5.2.1918.25541,670,14422-Oct-200512:57IA-64
Mqsvc.exe5.2.1918.255413,31222-Oct-200512:57IA-64
Mqtgclus.dll5.2.1918.255483,45622-Oct-200512:57IA-64
Mqtgsvc.exe5.2.1918.2554328,19222-Oct-200512:57IA-64
Mqtrig.dll5.2.1918.2554453,63222-Oct-200512:57IA-64
Mqupgrd.dll5.2.1918.2554176,64022-Oct-200512:57IA-64
Msmqocm.dll5.2.1918.2554662,52822-Oct-200512:57IA-64

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 Microsoft Windows Server 2003 Service Pack 2.

More information

When a message arrives in Message Queuing 3.0, the message is put in a list, and an asynchronous write is issued. When the write finishes, the process finds the message in the list and then starts the next step for the message.

Therefore, when the write for a new message finishes, the process looks for the new message in the list. However, the process finds the old message instead. Because the write for the new message never appears to finish, the process stops processing the new message and all the following messages.

New messages keep being added to the list, but the new messages are never acknowledged. The new messages are never acknowledged because the write for the first message in the list never appears to finish.

For more information about how hotfix packages are named, click the following article number to view the article in the Microsoft Knowledge Base:
816915 New file naming schema for Microsoft Windows software update packages
For more information, 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

Properties

Article ID: 902951 - Last Review: November 2, 2013 - Revision: 4.0
Applies to
  • Microsoft Windows Server 2003 Service Pack 1
Keywords: 
kbnosurvey kbarchive kbautohotfix kbwinserv2003sp2fix kbhotfixserver kbwinserv2003presp2fix kbbug kbfix kbqfe KB902951

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com