Ensuring unique CIDs for MSDTC in BizTalk installations
How to verify and regenerate unique Microsoft Distributed Transaction Coordinator (MS DTC) CIDs on cloned machines to prevent transaction problems in distributed BizTalk environments
Situation
By installing BizTalk in a distributed environment it is essential, that the MS DTC (Microsoft Distributed Transaction Controller) have an unique CID. Notably by cloning machines in a virtual environment this is often not the case, if the customizing after cloning is too simple establishes. A lot of system guys don’t care about this IDs – they only change the SIDs of the systems.
To verify this, you have compare these IDs via RegEdit.
- Start RegEdit
- Goto
HKLM\CID(there are around 4 GUIDs below this key) - Open these GUIDs and look for the Description key with value MSDTC.
The parent GUID of this Description key must be unique over all involved machines!
Solution
If this is not the case, do the following. btw: In circumstance that there is often used the same process to clone the machines, you should go the following steps on all machines. Otherwise you need it for all without one.
- Open Services Normally you should see “Distributed Transaction Coordinator” with Status: Started and Startup Type: Automatic
- Open cmd prompt as administrator and run
msdtc –uninstall
After refreshing the view in Services (F5) there should no more the entry “Distributed Transaction Coordinator”
After refreshing the view in RegEdit (F5) there should be no more the CID-key - run now
msdtc –install
After refreshing the view in Services (F5) there should be “Distributed Transaction Coordinator” again with Status:<empty>and Startup Type: Manual
After refreshing the view in RegEdit (F5) there is now a new CID-key with new GUIDs below - run
sc config msdtc start= auto(yes – there is a space between equal-sign and auto!) After refreshing the view in Services (F5) there should be “Distributed Transaction Coordinator” with Status:<empty>and Startup Type: Automatic - run
sc start msdtc
After refreshing the view in Services (F5) there should be “Distributed Transaction Coordinator” with Status: Started and Startup Type: Automatic
Remarks
Use the tools DTCPing and DTSTester.