in-doubt xact resolution (opción)

Utilice la opción in-doubt xact resolution para controlar el resultado predeterminado de las transacciones que el Coordinador de transacciones distribuidas de Microsoft (MS DTC) no consigue resolver. La incapacidad de resolver estas transacciones puede estar relacionada con un tiempo de inactividad de MS DTC o con un resultado de transacción inesperado en el momento de la recuperación.

La siguiente tabla enumera los valores de resultado posibles para resolver una transacción dudosa.

Valor del resultado

Descripción

0

Ninguna suposición. La recuperación no es correcta si MS DTC no puede resolver ninguna transacción dudosa.

1

Suponer la confirmación. Se presupone que las transacciones MS DTC dudosas se han confirmado.

2

Suponer anulación. Se presupone que las transacciones MS DTC dudosas se han anulado.

Para minimizar la posibilidad de sufrir tiempos de inactividad prolongados, un administrador puede configurar esta opción para suponer una confirmación o una anulación, tal y como se muestra en el siguiente ejemplo.

sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
sp_configure 'in-doubt xact resolution', 2 -– presume abort
GO
RECONFIGURE
GO
sp_configure 'show advanced options', 0
GO
RECONFIGURE
GO

De forma alternativa, un administrador puede dejar el valor predeterminado (ninguna suposición) y permitir que la recuperación no sea correcta para dejar constancia del error del DTC, tal y como se muestra en el siguiente ejemplo.

sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
sp_configure 'in-doubt xact resolution', 1 -– presume commit
GO
reconfigure
GO
ALTER DATABASE pubs SET ONLINE –- run recovery again
GO
sp_configure 'in-doubt xact resolution', 0 –- back to no assumptions
GO
sp_configure 'show advanced options', 0
GO
RECONFIGURE
GO

in-doubt xact resolution es una opción avanzada. Si utiliza el procedimiento almacenado del sistema sp_configure para cambiar el valor, sólo podrá cambiar la opción in-doubt xact resolution si show advanced options tiene establecido el valor 1. El valor surte efecto inmediatamente sin necesidad de reiniciar el servidor.

Nota

La configuración coherente de esta opción en todas las instancias de Microsoft SQL Server implicadas en cualquier transacción distribuida ayuda a evitar incoherencias en los datos.