I worked on interesting MSDTC issue today that i would like to share here.
When we tried to stop Orchestration or start Orchestration, we were getting the error “MSDTC was unable to read its configuration information 8004d027” and we see the following entries in the application event log
Event Type: Error Event Source: MSDTC Client Event Category: XOleHlp Event ID: 4212 Date: 7/20/2010 Time: 8:05:48 PM User: N/A Computer: MYCOMPUTER Description: Unable to get the file name for the OLE Transactions Proxy DLL. Error Specifics: d:\nt\com\complus\dtc\dtc\xolehlp\xolehlp.cpp:148, Pid: 4526 No Callstack, CmdLine: "C:\Biztalk\BTSmmc.msc" "C:\Biztalk\BTSmmc.msc" -32
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp. Data: 0000: 27 d0 04 80
Event Type: Error Event Source: MSDTC Client Event Category: XOleHlp Event ID: 4215 Date: 7/20/2010 Time: 8:05:48 PM User: N/A Computer: MYCOMPUTER Description: Failed to connection to the registry on the remote MS DTC Transaction Manager's system. Error Specifics: d:\nt\com\complus\dtc\dtc\xolehlp\xolehlp.cpp:299, Pid: 4526 No Callstack, CmdLine: "C:\Biztalk\BTSmmc.msc" "C:\Biztalk\BTSmmc.msc" -32
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp. Data: 0000: 35 00 00 00
In the machine.config, under system.transactions section, distributedTransactionManagerName is set to the value which is not a valid server name
<system.transactions> <machineSettings maxTimeout="02:00:00" /> <defaultSettings distributedTransactionManagerName="someserver" timeout="02:00:00" /> </system.transactions>
We've removed the <system.transactions> section from machine.config to resolve the issue
1) This configuration can be present in global web.config or application’s web.config as well. If you are running into this issue and did not find the <system.transactions>configuration in machine.config, please also verify global web.config, application’s web.config, etc.
2) In this particular case, we’ve got the issue in BizTalk environment. However this article applies to all DTC related applications which are using system.transactions.
Troubleshooting Operational Issues
Tools used to troubleshoot the issue
DTCPing, WinRM, Windbg, Reflector, Process Monitor