ID: Q197217
The information in this article applies to:
When using the Microsoft Distributed Transaction Coordinator (DTC) as the transaction manager for some XA compliant resource managers, such as Oracle, there can be a slow memory leak in the Msdtc.exe process. The leak occurs whenever the XA Transaction Manager (XATM) component of DTC opens and closes a connection to the resource manager. This does not happen very frequently so the memory leak is typically quite small.
Who Should Install This Release?
You should install hotfix 0809 if you are using experiencing the DTC memory leak described in the SUMMARY section.
This release should only be installed on systems running Windows NT 4.0 (Service Pack 4 is recommended). It should not be installed on systems running Windows NT 3.51.
Note that this release is based upon the version of Microsoft DTC included with the Windows NT 4.0 Service Pack 4 Release. By installing this release, you are upgrading Microsoft DTC to the Windows NT 4.0 Service Pack 4 Release level, in addition to correcting the problems described here.
1. Create an empty temporary directory on your system.
2. Run the self-extracting executable file (i0809.exe [for the i386] or
a0809.exe [for alpha]) and enter the name of the temporary directory
when prompted. The program unzips the following files into the temporary
directory:
Files
-----
Dtcsetup.exe
Qfe0809.txt
3. Make sure that you stop the Microsoft DTC service. Also, make sure that
any service that depends upon Microsoft DTC is stopped including
Microsoft Transaction Server, Microsoft SQL Server, Microsoft Message
Queue, and Microsoft COMTI.
4. Make sure that the Windows NT Control Panel is closed.
5. Execute Dtcsetup.exe.
6. Reboot the system.
7. Restart any services that depend upon Microsoft DTC.
1. Create an empty temporary directory on both nodes of the cluster.
2. On both nodes of the cluster, run the self-extracting executable file
(i0809.exe [for the i386] or a0809.exe [for the alpha]) and enter the
name of the temporary directory when prompted. The program unzips the
following files into the temporary directory:
Files
-----
Dtcsetup.exe
Qfe0809.txt
3. Make sure that the Microsoft DTC cluster resource is stopped using the
MSCS Cluster Administrator. Also, make sure that any services that
depend upon Microsoft DTC are also stopped including Microsoft
Transaction Server, Microsoft SQL Server, Microsoft Message Queue, and
Microsoft COMTI.
4. Make sure that the Windows NT Control Panel is closed on all systems in
the cluster.
5. Execute the Dtcsetup.exe on the node that controls the Microsoft DTC
cluster resource. When prompted to install Microsoft DTC on the other
nodes in the cluster, run Dtcsetup.exe on those nodes. After doing this,
reboot all systems.
6. Restart any services that depend upon Microsoft DTC.
1. Create an empty temporary directory on both nodes of the cluster.
2. On both nodes of the cluster, run the self-extracting executable file
(i0809.exe [for the i386] or a0809.exe [for the alpha]) and enter the
name of the temporary directory when prompted. The program unzips the
following files into the temporary directory:
Files
-----
Dtcsetup.exe
Qfe0809.txt
3. Make sure that the Microsoft DTC service is stopped on every system in
the cluster. Also, make sure that any service that depends upon
Microsoft DTC are also stopped including Microsoft Transaction Server,
Microsoft SQL Server, Microsoft Message Queue, and Microsoft COMTI.
4. Make sure that the Windows NT Control Panel is closed on all systems in
the cluster.
5. When you install this release on a clustered system, the setup program
automatically installs a clustered version of Microsoft DTC. The
clustered version of Microsoft DTC requires a MSCS Resource Group that
contains both a Network Name Resource and a Shared Disk Resource. Before
installing this release, make sure that at least one such MSCS Resource
Group exists. Dtcsetup.exe assigns Microsoft DTC to the first MSCS
Resource Group that it finds that contains both a Network Name Resource
and Shared Disk Resource. After ensuring that the necessary Resource
Group exists, execute Dtcsetup.exe on the node controlling that Resource
Group.
6. When prompted to install Microsoft DTC on the other nodes in the
cluster, run Dtcsetup.exe on those nodes. After doing this, reboot all
systems.
7. Restart any services that depend upon Microsoft DTC.
The XATM creates objects called "tasks" that do work on behalf of the core state-machines. This work happens asynchronously. Due to a bug - the XATM was never destroying the task objects. Task objects are created every time a new connection is opened to the XA RM by the resource dispenser or every time the XATM tries to recover an indoubt connection.
Version : WINNT:2.0
Platform : winnt
Issue type : kbinfo
Last Reviewed: March 11, 1999