Fix for MSDTC Service errors in Windows Cluster
Thursday, March 12th, 2009 | Author:

Some times Configuring MSDTC and their error can ruin your Windows Cluster service and your time as well. You may get one of the following error when you failover the MSDTC service from one Dedicated node to another.

This would only happen if the Cluster services has been installed before installing and configuring MSDTC Service. Hence it is highly recommended that you first install and configure MSDTC and then configure the Windows Cluster Service.

Event ID: 4097
Description:
MS DTC started with the following settings: Security Configuration (OFF = 0 and ON = 1): Network Administration of Transactions = 1, Network Clients = 0, Distributed Transactions using Native MSDTC Protocol = 1, Transaction Internet Protocol (TIP) = 0, XA Transactions = 1.

OR

Event ID: 4395
Description:
MSDTC detected that MSDTC related information in the local registry is different from that in the shared cluster registry. Error Specifics: d:ntcomcom1xdtcsharedmtxclumtxclusetuphelper.cpp:541, CmdLine: C:WINNTSystem32msdtc.exe, Pid: 796
Data:
0000: 05 40 00 80 .@.?

OR

Event ID: 4384
Description:
MS DTC was unable to start because the installation was not configured to run on a cluster. Please run comclust.exe and restart MS DTC. Error Specifics: d:ntcomcom1xdtcsharedmtxclumtxclusetuphelper.cpp:668, CmdLine: C:WINNTSystem32msdtc.exe, Pid: 796

OR

Event ID : 7024
Source : Service Control Manager
Description: The MSDTC service terminated with service specific error 3221229584.

Initially you should try and run the command below and check if it solves the problem:

msdtc -resetlog

If that does not help then follow the fix below:

1. Delete the DTC resource
2. Delete MSDTC folder from the quorum disk.

On Node 1:

– Stop the Cluster Service

– Remove Enable network DTC  Service with the command below:

msdtc -uninstall

Make sure to check the Success in the Event logs.

– Verify that the following registry key has been removed as well.. if not then remove it manually.

HKEY_CLASSES_ROOTCID
HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSDTC
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSDTC

– Reboot the Server

– After the Server is back online reinstall Enable network DTC Service with the command below:

msdtc -install

Now create the DTC resource on Node 1 and it should come online.

Now on Node 2

– Stop the Cluster Services.

– Evict Node 2 from the Cluster

– Remove Enable network DTC  Service with the command below:

msdtc -uninstall

Make sure to check the Success in the Event logs.

– Verify that the registry key has been removed as well.. if not then remove it manually.

– Reboot

Reinstall Enable network DTC Service with the command below:

msdtc -install

– Verify that the Service has now Started and also registry keys created.

– Rejoin the node back into the cluster.