INFO: Memory Leak in Msdtc.exe when Using XA Resource Manager

ID: Q197217


The information in this article applies to:
  • Microsoft Transaction Server 2.0


SUMMARY

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.


MORE INFORMATION

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.

Installing the Release on a Non-Clustered System

  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. Restart the system.


  7. Restart any services that depend upon Microsoft DTC.


Installing Release on a cluster with an Existing Clustered 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.


Installing the Release on a Cluster with a Non-Clustered 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.


Additional query words:

Keywords : kbMTS kbMTS200 kbGrpCom kbDSupport
Version : winnt:2.0
Platform : winnt
Issue type : kbinfo


Last Reviewed: October 14, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.