FIX: DTC Log Notification Problem Leaves Transactions Incomplete

ID: Q232533


The information in this article applies to:
  • Microsoft Transaction Server 2.0
    on the following platforms: NT


SYMPTOMS

When using Microsoft SQL Server, Microsoft Transaction Server, or the Distributed Transaction Coordinator (DTC) directly, distributed transactions sometimes do not complete for no apparent reason.

Because the transaction stops responding, you do not receive an error nor is an error logged anywhere. However, you can use the Transactions tab of the MS DTC Admin Console to look for transactions that are "not moving," in the "only failed to notify" state, or in the "preparing" state for an extended period of time to get an indication of this problem. The MS DTC Admin Console is located in the system32 directory on your computer:

c:\winnt\system32\dac.exe


CAUSE

The DTC uses a log file to record the current state of a transaction. During the logging of the status for a transaction, the log notification is lost and never received. This causes the transaction manager to wait indefinitely and the transaction is never completed.


RESOLUTION

To resolve this problem, obtain the latest service pack for Windows NT 4.0 or the individual software update. For information on obtaining the latest service pack, please go to:

For information on obtaining the individual software update, contact Microsoft Product Support Services. For a complete list of Microsoft Product Support Services phone numbers and information on support costs, please go to the following address on the World Wide Web:
http://www.microsoft.com/support/supportnet/overview/overview.asp


STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. This problem was first corrected in Windows NT 4.0 Service Pack 6.


MORE INFORMATION

Hotfix Installation

This hotfix should only be installed on systems running Microsoft Windows NT version 4.0 (Service Pack 5 or later 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 5 release. By installing this hotfix, you are upgrading Microsoft DTC to the Windows NT 4.0 Service Pack 5 release level in addition to correcting the problems described here.

How to Install on a Nonclustered System

  1. Create an empty temporary directory on your system.


  2. Run the self-extracting executable file (I051099c.exe [i386] or A051099c.exe [Alpha]) and type the name of the temporary directory when you are prompted to do so. The program will decompress the following files into the temporary directory:
    Dtcsetup.exe
    Qfe051099c.txt


  3. 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]).


  4. Close Control Panel, if it is open.


  5. Run Dtcsetup.exe.


  6. Restart the system.


  7. Restart all services that depend on DTC.


How to Install on a Cluster with an Already Clustered Microsoft DTC

  1. Create an empty temporary directory on both nodes of the cluster.


  2. Run the self-extracting executable file (I051099c.exe [i386] or A051099c.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 decompress the following files into the temporary directory:
    Dtcsetup.exe
    Qfe051099c.txt


  3. Use the Microsoft Cluster Server (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).


  4. Close Control Panel on all systems in the cluster.


  5. 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.


  6. Restart all systems.


  7. Restart all services that depend on Microsoft DTC.


How to Install on a Cluster with a Non-clustered Microsoft DTC

  1. Create an empty temporary directory on both nodes of the cluster.


  2. Run the self-extracting executable file (I051099c.exe [i386] or A051099c.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 decompress the following files into the temporary directory:
    Dtcsetup.exe
    Qfe051099c.txt


  3. 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).


  4. Close Control Panel on all systems in the cluster.


  5. When you install this release on a clustered system, Setup 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 a shared disk resource. After ensuring that the necessary resource group exists, run Dtcsetup.exe on the node controlling that resource group.


  6. When you are prompted to install Microsoft DTC on the other nodes in the cluster, run Dtcsetup.exe on those nodes.


  7. Restart all the computers.


  8. Restart all services that depend on Microsoft DTC.


Additional query words: mts dtc SQL Server WinDNA transaction distributed

Keywords : kbDTC kbMTS200bug kbWinDNA kbGrpSIE NT4SP6Fix
Version : winnt:2.0
Platform : winnt
Issue type : kbbug


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