Option in-doubt xact resolution

Utilisez l'option in-doubt xact resolution pour contrôler le résultat par défaut des transactions que le MS DTC (Distributed Transaction Coordinator) de Microsoft ne peut pas résoudre. L'incapacité à résoudre des transactions peut être liée au temps d'inactivité MS DTC ou à un résultat de transaction inattendu au moment de la récupération.

Le tableau suivant récapitule les valeurs de résultat possibles pour résoudre une transaction incertaine.

Valeur du résultat

Description

0

Pas de présomption. La récupération échoue si MS DTC ne peut pas résoudre les transactions incertaines.

1

Validation présumée. Toutes les transactions incertaines de MS DTC sont supposées être validées.

2

Abandon présumé. Toutes les transactions incertaines de MS DTC sont supposées avoir échoué.

Pour réduire l'éventualité d'un temps d'inactivité prolongé, l'administrateur peut décider de configurer cette option pour présumer la validation ou l'abandon, comme dans l'exemple suivant.

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

L'administrateur peut aussi conserver la valeur par défaut (pas de présomption) et autoriser l'échec de la récupération afin d'être averti en cas de défaillance du DTC, comme dans l'exemple suivant.

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

L'option in-doubt xact resolution est une option avancée. Si vous utilisez la procédure stockée système sp_configure pour changer ce paramètre, vous ne pouvez modifier l'option in-doubt xact resolution que si la valeur 1 a été attribuée à l'option show advanced options. Le paramètre prend effet immédiatement (sans arrêt et redémarrage du serveur).

Notes

Une configuration identique de cette option dans toutes les instances de Microsoft SQL Server impliquées dans les transactions distribuées permettra d'éviter des incohérences dans les données.