Este mensaje aparece cuando se intenta dar de alta una transacción nueva o existente de Microsoft DTC (Coordinador de transacciones distribuidas) y se produce un error.
La causa del error al darla de alta puede variar. El estado del error, el código de resultado específico devuelto con el error y cualquier otro error que se produzca más o menos al mismo tiempo pueden ayudarle a determinar el motivo del error al tramitar el alta dentro de su entorno. Un error al dar de alta suele indicar un problema de comunicación, como por ejemplo en la resolución de nombres. También puede deberse al código de la aplicación que realiza la llamada, o bien a un bloqueo o a problemas de rendimiento en SQL Server.
Compruebe que MS DTC se haya iniciado en ambos equipos implicados en la transacción MS DTC. Si el servicio MS DTC está agrupado, compruebe que tenga conexión en el Administrador de clústeres.
Revise los registros de eventos de los servidores involucrados en la transacción MS DTC para comprobar si se han producido otros errores al mismo tiempo que este mensaje. Si hay otros errores, soluciónelos en primer lugar, ya que este error suele ser un efecto secundario de otros errores.
De forma predeterminada, el acceso de red de MS DTC está deshabilitado en Windows Server 2003. Si alguno de los equipos implicados ejecuta Windows 2003, compruebe que se haya habilitado MS DTC. Para obtener más información acerca de cómo habilitar el acceso de red de MS DTC en Windows 2003, vea el artículo de Microsoft Knowledge Base 817064.
Compruebe que las comunicaciones RPC entre los servidores implicados funcionen bien.
Reinicie los servidores involucrados en la transacción MS DTC para vaciar toda la información acerca de las direcciones IP.
Compruebe que la configuración de tiempo de espera para transacciones del componente COM+ que realiza la llamada sea adecuada para evitar la superación del tiempo de espera, ya que esto podría hacer que otro componente intentara dar de alta una transacción que ya ha agotado el tiempo de espera.
Si ha activado la opción de configuración "agrupación ligera" (o "modo de fibra") de SQL Server, vuelva a desactivarla. Compruebe si el error se sigue produciendo.
Si ha activado la opción de configuración de SQL Server "aumento de prioridad", vuelva a desactivarla. Compruebe si el error se sigue produciendo.
Revise el artículo de Microsoft Knowledge Base 307802 para ver si su entorno coincide exactamente con el descrito en el artículo. Si es así, intente cambiar uno de los factores del entorno para comprobar si el mensaje deja de aparecer. Si no vuelve a aparecer cuando el entorno ya no coincide con la descripción del artículo, sabrá que puede hacer caso omiso del mensaje sin riesgos.
Target | Microsoft.SQLServer.2012.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Event_ID | 8510 | ||
Event Source | $Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$ | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application | ||
Comment | Mom2012ID='{7F714A4C-B7CF-4665-B1B5-4D7A3E0613D0}';MOM2012GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74} |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ | DataSource | Microsoft.Windows.EventProvider | Microsoft.SQLServer.SQLDefaultAccount |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SQLServer.2012.Enlist_of_MSDTC_transaction_failed_1_5_Rule" Target="SQL2012Core!Microsoft.SQLServer.2012.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2012ID='{7F714A4C-B7CF-4665-B1B5-4D7A3E0613D0}';MOM2012GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Windows!Microsoft.Windows.EventProvider" RunAs="SQL!Microsoft.SQLServer.SQLDefaultAccount">
<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>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>8510</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2012.Enlist_of_MSDTC_transaction_failed_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>