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:
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 have Windows Server 2003 Service Pack 1 or Windows Server 2003 Service Pack 2 installed to apply this hotfix rollup package.
Restart requirement
You must restart the computer after you apply this hotfix rollup package.
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
File name | File version | File size | Date | Time | Platform | SP requirement | Service branch |
---|
Msdtc.exe | 2001.12.4720.2953 | 6,144 | 11-Jun-2007 | 11:16 | x86 | SP1 | SP1QFE |
Msdtclog.dll | 2001.12.4720.2953 | 76,288 | 11-Jun-2007 | 23:19 | x86 | SP1 | SP1QFE |
Msdtcprx.dll | 2001.12.4720.2953 | 472,064 | 11-Jun-2007 | 23:19 | x86 | SP1 | SP1QFE |
Msdtcstp.dll | 2001.12.4720.2953 | 98,304 | 11-Jun-2007 | 23:19 | x86 | SP1 | SP1QFE |
Msdtctm.dll | 2001.12.4720.2953 | 1,053,696 | 11-Jun-2007 | 23:19 | x86 | SP1 | SP1QFE |
Msdtcuiu.dll | 2001.12.4720.2953 | 166,400 | 11-Jun-2007 | 23:19 | x86 | SP1 | SP1QFE |
Mtxclu.dll | 2001.12.4720.2953 | 79,360 | 11-Jun-2007 | 23:19 | x86 | SP1 | SP1QFE |
Mtxoci.dll | 2001.12.4720.2953 | 111,616 | 11-Jun-2007 | 23:19 | x86 | SP1 | SP1QFE |
Xolehlp.dll | 2001.12.4720.2953 | 10,752 | 11-Jun-2007 | 23:19 | x86 | SP1 | SP1QFE |
Msdtc.exe | 2001.12.4720.4097 | 6,144 | 11-Jun-2007 | 11:30 | x86 | SP2 | SP2QFE |
Msdtclog.dll | 2001.12.4720.4097 | 76,288 | 11-Jun-2007 | 23:15 | x86 | SP2 | SP2QFE |
Msdtcprx.dll | 2001.12.4720.4097 | 469,504 | 11-Jun-2007 | 23:15 | x86 | SP2 | SP2QFE |
Msdtcstp.dll | 2001.12.4720.4097 | 98,304 | 11-Jun-2007 | 23:15 | x86 | SP2 | SP2QFE |
Msdtctm.dll | 2001.12.4720.4097 | 1,054,208 | 11-Jun-2007 | 23:15 | x86 | SP2 | SP2QFE |
Msdtcuiu.dll | 2001.12.4720.4097 | 167,424 | 11-Jun-2007 | 23:15 | x86 | SP2 | SP2QFE |
Mtxclu.dll | 2001.12.4720.4097 | 79,360 | 11-Jun-2007 | 23:15 | x86 | SP2 | SP2QFE |
Mtxoci.dll | 2001.12.4720.4097 | 111,104 | 11-Jun-2007 | 23:15 | x86 | SP2 | SP2QFE |
Xolehlp.dll | 2001.12.4720.4097 | 10,752 | 11-Jun-2007 | 23:15 | x86 | SP2 | SP2QFE |
Windows Server 2003, x64-based versions
File name | File version | File size | Date | Time | Platform | SP requirement | Service branch |
---|
Msdtc.exe | 2001.12.4720.2953 | 6,656 | 11-Jun-2007 | 12:47 | x64 | SP1 | SP1QFE |
Msdtclog.dll | 2001.12.4720.2953 | 142,336 | 11-Jun-2007 | 23:20 | x64 | SP1 | SP1QFE |
Msdtcprx.dll | 2001.12.4720.2953 | 832,512 | 11-Jun-2007 | 23:20 | x64 | SP1 | SP1QFE |
Msdtcstp.dll | 2001.12.4720.2953 | 131,072 | 11-Jun-2007 | 23:20 | x64 | SP1 | SP1QFE |
Msdtctm.dll | 2001.12.4720.2953 | 2,158,080 | 11-Jun-2007 | 23:20 | x64 | SP1 | SP1QFE |
Msdtcuiu.dll | 2001.12.4720.2953 | 291,840 | 11-Jun-2007 | 23:20 | x64 | SP1 | SP1QFE |
Mtxclu.dll | 2001.12.4720.2953 | 145,408 | 11-Jun-2007 | 23:20 | x64 | SP1 | SP1QFE |
Mtxoci.dll | 2001.12.4720.2953 | 175,104 | 11-Jun-2007 | 23:20 | x64 | SP1 | SP1QFE |
Xolehlp.dll | 2001.12.4720.2953 | 10,752 | 11-Jun-2007 | 23:20 | x64 | SP1 | SP1QFE |
Wmsdtcprx.dll | 2001.12.4720.2953 | 472,064 | 11-Jun-2007 | 23:19 | x86 | SP1 | WOW |
Wmsdtcuiu.dll | 2001.12.4720.2953 | 166,400 | 11-Jun-2007 | 23:19 | x86 | SP1 | WOW |
Wmtxclu.dll | 2001.12.4720.2953 | 79,360 | 11-Jun-2007 | 23:19 | x86 | SP1 | WOW |
Wmtxoci.dll | 2001.12.4720.2953 | 111,616 | 11-Jun-2007 | 23:19 | x86 | SP1 | WOW |
Wxolehlp.dll | 2001.12.4720.2953 | 10,752 | 11-Jun-2007 | 23:19 | x86 | SP1 | WOW |
Msdtc.exe | 2001.12.4720.4097 | 6,656 | 11-Jun-2007 | 11:52 | x64 | SP2 | SP2QFE |
Msdtclog.dll | 2001.12.4720.4097 | 142,848 | 11-Jun-2007 | 23:11 | x64 | SP2 | SP2QFE |
Msdtcprx.dll | 2001.12.4720.4097 | 834,560 | 11-Jun-2007 | 23:11 | x64 | SP2 | SP2QFE |
Msdtcstp.dll | 2001.12.4720.4097 | 131,072 | 11-Jun-2007 | 23:11 | x64 | SP2 | SP2QFE |
Msdtctm.dll | 2001.12.4720.4097 | 2,158,592 | 11-Jun-2007 | 23:11 | x64 | SP2 | SP2QFE |
Msdtcuiu.dll | 2001.12.4720.4097 | 290,816 | 11-Jun-2007 | 23:11 | x64 | SP2 | SP2QFE |
Mtxclu.dll | 2001.12.4720.4097 | 145,408 | 11-Jun-2007 | 23:11 | x64 | SP2 | SP2QFE |
Mtxoci.dll | 2001.12.4720.4097 | 175,104 | 11-Jun-2007 | 23:11 | x64 | SP2 | SP2QFE |
Xolehlp.dll | 2001.12.4720.4097 | 10,752 | 11-Jun-2007 | 23:11 | x64 | SP2 | SP2QFE |
Wmsdtcprx.dll | 2001.12.4720.4097 | 469,504 | 11-Jun-2007 | 23:15 | x86 | SP2 | WOW |
Wmsdtcuiu.dll | 2001.12.4720.4097 | 167,424 | 11-Jun-2007 | 23:15 | x86 | SP2 | WOW |
Wmtxclu.dll | 2001.12.4720.4097 | 79,360 | 11-Jun-2007 | 23:15 | x86 | SP2 | WOW |
Wmtxoci.dll | 2001.12.4720.4097 | 111,104 | 11-Jun-2007 | 23:15 | x86 | SP2 | WOW |
Wxolehlp.dll | 2001.12.4720.4097 | 10,752 | 11-Jun-2007 | 23:15 | x86 | SP2 | WOW |
Windows Server 2003, Itanium-based versions
File name | File version | File size | Date | Time | Platform | SP requirement | Service branch |
---|
Msdtc.exe | 2001.12.4720.2953 | 9,728 | 11-Jun-2007 | 10:47 | IA-64 | SP1 | SP1QFE |
Msdtclog.dll | 2001.12.4720.2953 | 231,936 | 11-Jun-2007 | 23:23 | IA-64 | SP1 | SP1QFE |
Msdtcprx.dll | 2001.12.4720.2953 | 1,338,368 | 11-Jun-2007 | 23:23 | IA-64 | SP1 | SP1QFE |
Msdtcstp.dll | 2001.12.4720.2953 | 241,152 | 11-Jun-2007 | 23:23 | IA-64 | SP1 | SP1QFE |
Msdtctm.dll | 2001.12.4720.2953 | 3,213,824 | 11-Jun-2007 | 23:23 | IA-64 | SP1 | SP1QFE |
Msdtcuiu.dll | 2001.12.4720.2953 | 485,888 | 11-Jun-2007 | 23:23 | IA-64 | SP1 | SP1QFE |
Mtxclu.dll | 2001.12.4720.2953 | 208,384 | 11-Jun-2007 | 23:23 | IA-64 | SP1 | SP1QFE |
Mtxoci.dll | 2001.12.4720.2953 | 322,048 | 11-Jun-2007 | 23:23 | IA-64 | SP1 | SP1QFE |
Xolehlp.dll | 2001.12.4720.2953 | 18,432 | 11-Jun-2007 | 23:23 | IA-64 | SP1 | SP1QFE |
Wmsdtcprx.dll | 2001.12.4720.2953 | 472,064 | 11-Jun-2007 | 23:19 | x86 | SP1 | WOW |
Wmsdtcuiu.dll | 2001.12.4720.2953 | 166,400 | 11-Jun-2007 | 23:19 | x86 | SP1 | WOW |
Wmtxclu.dll | 2001.12.4720.2953 | 79,360 | 11-Jun-2007 | 23:19 | x86 | SP1 | WOW |
Wmtxoci.dll | 2001.12.4720.2953 | 111,616 | 11-Jun-2007 | 23:19 | x86 | SP1 | WOW |
Wxolehlp.dll | 2001.12.4720.2953 | 10,752 | 11-Jun-2007 | 23:19 | x86 | SP1 | WOW |
Msdtc.exe | 2001.12.4720.4097 | 9,728 | 11-Jun-2007 | 10:33 | IA-64 | SP2 | SP2QFE |
Msdtclog.dll | 2001.12.4720.4097 | 232,960 | 11-Jun-2007 | 23:09 | IA-64 | SP2 | SP2QFE |
Msdtcprx.dll | 2001.12.4720.4097 | 1,340,416 | 11-Jun-2007 | 23:09 | IA-64 | SP2 | SP2QFE |
Msdtcstp.dll | 2001.12.4720.4097 | 241,152 | 11-Jun-2007 | 23:09 | IA-64 | SP2 | SP2QFE |
Msdtctm.dll | 2001.12.4720.4097 | 3,216,384 | 11-Jun-2007 | 23:09 | IA-64 | SP2 | SP2QFE |
Msdtcuiu.dll | 2001.12.4720.4097 | 486,912 | 11-Jun-2007 | 23:09 | IA-64 | SP2 | SP2QFE |
Mtxclu.dll | 2001.12.4720.4097 | 208,384 | 11-Jun-2007 | 23:09 | IA-64 | SP2 | SP2QFE |
Mtxoci.dll | 2001.12.4720.4097 | 322,048 | 11-Jun-2007 | 23:09 | IA-64 | SP2 | SP2QFE |
Xolehlp.dll | 2001.12.4720.4097 | 18,432 | 11-Jun-2007 | 23:09 | IA-64 | SP2 | SP2QFE |
Wmsdtcprx.dll | 2001.12.4720.4097 | 469,504 | 11-Jun-2007 | 23:15 | x86 | SP2 | WOW |
Wmsdtcuiu.dll | 2001.12.4720.4097 | 167,424 | 11-Jun-2007 | 23:15 | x86 | SP2 | WOW |
Wmtxclu.dll | 2001.12.4720.4097 | 79,360 | 11-Jun-2007 | 23:15 | x86 | SP2 | WOW |
Wmtxoci.dll | 2001.12.4720.4097 | 111,104 | 11-Jun-2007 | 23:15 | x86 | SP2 | WOW |
Wxolehlp.dll | 2001.12.4720.4097 | 10,752 | 11-Jun-2007 | 23:15 | x86 | SP2 | WOW |
Technical information
The XA specification contains guidelines about the support for loosely coupled XA branches and tightly coupled XA branches. The isolation boundary for loosely coupled XA branches is based on the XID. The isolation boundary for tightly coupled XA branches is based on the GTRID. For more information about tightly coupled XA branches and loosely coupled XA branches, see the XA specification.
MS DTC provides an XA switch that implements the APIs that are defined in the X/Open Distributed Transaction Processing XA specification. This XA switch can be used by any XA transaction manager to communicate with a non-XA resource, such as SQL Server, through MS DTC. The current version of MS DTC only provides support for loosely coupled XA branches. For example, MS DTC has a one-to-one mapping between an XID and an MS DTC transaction ID. The work that is performed by loosely coupled XA branches is isolated from one another.
The XA specification contains guidelines about the support for tightly coupled XA branches. Multiple XA branches that have the different XIDs and the same GTRID can see one another's changes in the resource manager. This hotfix enables the support for tightly coupled XA branches where multiple XA branches with same GTRID are mapped to a single MS DTC transaction ID. This support enables multiple tightly coupled XA branches to see one another's changes in the resource manager, such as SQL Server.
By default, after you apply this hotfix, the
xa_open API is used for loosely coupled XA branches. If you want to call the
xa_open API for tightly coupled XA branches, you must add the following setting to the
xa_info parameter when you call the
xa_open API.
For example, use the following code to call the
xa_open API for tightly coupled XA branches.
char* pszXaOpenStr="TM=computerName, RmRecoveryGuid=b3a7647d-8ade-4816-9872-217f01b92071, BrIso=Tight�;
xa_open(pszXaOpenStr, rmid, flags);
This hotfix enables both loosely coupled XA branches and tightly coupled XA branches to be present at the same time based on the
xa_info parameter string. If XA branches have the same GTRID, one XA branch can be loosely coupled from a set of tightly coupled XA branches.
Additional registry entry
This hotfix provides a new registry key to change how xa_prepare messages are handled. You can add a new registry entry that is called WaitForAllXABranchPrepares to the
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
registry subkey. This registry entry is of DWORD type. If this registry entry is created and the value is set to 1, MS DTC will wait for all prepare messages.
This registry entry should be enabled or disabled by the application or the user. The XA specification specifies the following:
For tightly coupled XA branches, the resource manager may receive additional work for the same transaction from other branches after prepare messages are sent on one branch.
To enable this scenario, the value of the WaitForAllXABranchPrepares registry entry must be set to 1. After you set the value of the WaitForAllXABranchPrepares registry entry to 1, MS DTC will wait for all tightly coupled XA branches to send prepare messages. Then, MS DTC will delegate the prepare messages to the enlisted resource, such as SQL Server.
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