Error recovering database . Could not connect to MSDTC to check the completion status of transaction

Microsoft.SQLServer.2000.Error_recovering_database___Could_not_connect_to_MSDTC_to_check_the_completion_status_of_transaction (Rule)

Knowledge Base article:

Causes

When you are using Microsoft Distributed Transaction Coordinator (MSDTC) to manage a distributed transaction across multiple servers and a loss of connectivity occurs, the distributed transaction is left in an unknown or "in doubt" state. Common sources of interruptions are

Resolutions

There are several different methods that you can use to resolve the inconsistent distributed transactions:

Windows 2000

Frequently, you can use the MSDTC administrative console:

Windows NT

External

For more information about errors 3437, 3437, and "Could Not Connect to DTC" when you start SQL Server, see the Microsoft Knowledge Base article 306366.

Element properties:

TargetMicrosoft.SQLServer.2000.DBEngine
CategoryEventCollection
EnabledTrue
Event Source$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Error recovering database . Could not connect to MSDTC to check the completion status of transaction
{0}
Event LogApplication
CommentMom2005ID='{70204B00-EA63-4D25-914C-C0710834FB91}'

Member Modules:

ID Module Type TypeId RunAs 
EventDS DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.2000.Error_recovering_database___Could_not_connect_to_MSDTC_to_check_the_completion_status_of_transaction" Target="SQL2000Core!Microsoft.SQLServer.2000.DBEngine" Enabled="true" Comment="Mom2005ID='{70204B00-EA63-4D25-914C-C0710834FB91}'" Remotable="true">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="EventDS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>^(17052|17055)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDescription</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005BooleanRegularExpression</Operator>
<Pattern>((^.*3437 and (not ^.*\n.*3437)) or (^.*3437.*\n.*3437)) AND (NOT ^.*[0-9]+.*3437) AND (NOT ^.*3437[0-9]+)</Pattern>
</RegExExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertOwner>$Data/PublisherName$</AlertOwner>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2000.Error_recovering_database___Could_not_connect_to_MSDTC_to_check_the_completion_status_of_transaction.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>