Microsoft KB Archive/197812

= FIX: DTC Log File Corruption or Growth Problems =

Article ID: 197812

Article Last Modified on 9/23/2005

-

APPLIES TO


 * Microsoft Transaction Services 2.0

-



This article was previously published under Q197812



SYMPTOMS
This hotfix corrects several DTC log problems:


 * When Microsoft Distributed Transaction Coordinator (DTC) is used with an XA-compliant resource manager such as Oracle, IBM DB2, or Informix, the Dtcxatm.log file can grow to an extremely large size. In some cases the log file may consume several hundred megabytes of disk space. The size of the log file may also affect recovery time. When recovery is performed, MS DTC reads through the entire log file which can lead to extremely long recovery times. This problem occurs because of an error in the way that space is reclaimed in the log file. This problem has been corrected.
 * The MS DTC service may fail to start because the Msdtc.log file was corrupted. There were two circumstances under which this could occur.


 * If MS DTC recovery occurs just after MS DTC reaches the end of the log file and resumes writing at the beginning of the log file. -or-


 * If MS DTC recovery is performed twice in very quick succession.



STATUS
Microsoft has confirmed this to be a problem in Microsoft Transaction Server version 2.0.

This bug was corrected in COM+.



Who Should Install This Release
You should install hotfix 0806 if you are experiencing the DTC log-related problems discussed above.

This hotfix should only be installed on systems running Microsoft Windows NT version 4.0 (Service Pack 4 is recommended). It should not be installed on systems running Microsoft Windows NT version 3.51 or Microsoft Windows 2000.

Note that this hotfix is based on the version of Microsoft DTC included with the Windows NT 4.0 Service Pack 4 release. By installing this hotfix, you are upgrading Microsoft DTC to the Windows NT 4.0 Service Pack 4 release level in addition to correcting the problems described here.

How to Install on a Non-clustered System
 Create an empty temporary directory on your system. Run the self-extracting executable file (I0806.exe (i386) or A0806.exe (alpha)) and type the name of the temporary directory when you are prompted to do so.

The program will unzip the following files into the temporary directory:

Dtcsetup.exe

Qfe0806.txt

 Stop the Microsoft DTC Service, if it is running. Stop all services that depend on Microsoft DTC (including Microsoft Transaction Server, Microsoft SQL Server, Microsoft Message Queue, and Microsoft COM Transaction Integrator (COMTI)). Close Windows NT Control Panel, if it is open. Run Dtcsetup.exe. Restart the system.</li> Restart all services that depend on Microsoft DTC.</li></ol>

How to Install on a Cluster with an Already Clustered Microsoft DTC
<ol> Create an empty temporary directory on both nodes of the cluster.</li> Run the self-extracting executable file (I0806.exe (i386) or A0806.exe (alpha)) on both nodes of the cluster and type the name of the temporary directory when you are prompted to do so.

The program will unzip the following files into the temporary directory:

Dtcsetup.exe

Qfe0806.txt

</li> Use the MSCS Cluster Administrator to stop the Microsoft DTC cluster resource, if it is running. Stop all services that depend on Microsoft DTC (including Microsoft Transaction Server, Microsoft SQL Server, Microsoft Message Queue, and Microsoft COMTI).</li> Close Windows NT Control Panel on all systems in the cluster.</li> Run Dtcsetup.exe on the node that controls the Microsoft DTC cluster resource. When you are prompted to install Microsoft DTC on the other nodes in the cluster, run Dtcsetup.exe on those nodes.</li> Restart all systems.</li> Restart all services that depend on Microsoft DTC.</li></ol>

How to Install on a Cluster with a Non-clustered Microsoft DTC
<ol> Create an empty temporary directory on both nodes of the cluster.</li> Run the self-extracting executable file (I0806.exe (i386) or A0806.exe (alpha)) on both nodes of the cluster and type the name of the temporary directory when you are prompted to do so.

The program will unzip the following files into the temporary directory:

Dtcsetup.exe

Qfe0806.txt

</li> Stop the Microsoft DTC Service on all systems in the cluster. Stop all services that depend on Microsoft DTC (including Microsoft Transaction Server, Microsoft SQL Server, Microsoft Message Queue, and Microsoft COMTI).</li> Close Windows NT Control Panel on all systems in the cluster.</li> 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 an MSCS Resource Group that contains both a Network Name Resource and a Shared Disk Resource. Before installing this release, ensure that at least one such MSCS Resource Group exists. Dtcsetup.exe will assign 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, run Dtcsetup.exe on the node controlling that Resource Group.</li> When you are prompted to install Microsoft DTC on the other nodes in the cluster, run Dtcsetup.exe on those nodes.</li> Reboot all systems.</li> Restart all services that depend on Microsoft DTC.</li></ol>

Keywords: kbbug kbfix kbqfe kbdtc kbhotfixserver KB197812

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.