Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

scenario: Windows 2003 sp2 x64 enterprise edition. SQL 2005 sp2 cu9 x64 Enterprise edition

After restarting the resource groups on two node active-active cluster, 3 SQL 2005 instances start up fine. The 4th one starts up but starts throwing the following error.

"Enlist operation failed: 0x8004d00e(XACT E NOTRANSACTION). SQL Server could not register with Microsoft Distributed Transaction Coordinator (MS DTC) as a resource manager for this transaction. The transaction may have been stopped by the client or the resource manager."

MSDTC is fine since the other 3 function normally. The only way to "fix" it is to take the 4th instance offline and bring it online again. Is there any way to fix this enlistment without restarting?

share|improve this question
    
Is MSDTC configured to work through a firewall by chance? –  mrdenny Aug 14 '09 at 22:43
    
Very strange. Normally that'll be caused because MSDTC runs out of TCP ports because it's been restricted to go through a firewall. If you open the Component Services does it show anything failed? When SQL Starts saying that it failed is it able to use distributed transactions? I take it this only happens when you restart all 4 resource groups at the same time? –  mrdenny Aug 15 '09 at 2:15
    
SQL takes persistent connections to MSDTC. So if its out of ports the other instances can still work fine, until they need more ports then they currently have. SQL will eventually drop most if not all of those connections. –  mrdenny Aug 17 '09 at 20:50
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.