Opzione di configurazione del server in-doubt xact resolutionin-doubt xact resolution Server Configuration Option

QUESTO ARGOMENTO SI APPLICA A:sìSQL Server (a partire dalla versione 2008)noDatabase SQL di AzurenoAzure SQL Data Warehouse noParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

L'opzione in-doubt xact resolution consente di controllare il risultato predefinito delle transazioni che non possono essere risolte da MicrosoftMicrosoft Distributed Transaction Coordinator (MS DTC).Use the in-doubt xact resolution option to control the default outcome of transactions that the MicrosoftMicrosoft Distributed Transaction Coordinator (MS DTC) is unable to resolve. L'impossibilità di risolvere le transazioni potrebbe essere dovuta al tempo di inattività di MS DTC oppure a un risultato sconosciuto della transazione al momento del recupero.Inability to resolve transactions may be related to the MS DTC down time or an unknown transaction outcome at the time of recovery.

Nella tabella seguente vengono descritti i possibili valori del risultato della risoluzione di una transazione in dubbio.The following table lists the possible outcome values for resolving an in-doubt transaction.

Valore risultatoOutcome value DescrizioneDescription
00 No presumption (nessuna presupposizione).No presumption. L'operazione di recupero ha esito negativo se tramite MS DTC non è possibile risolvere alcuna transazione in dubbio.Recovery fails if MS DTC cannot resolve any in-doubt transactions.
11 Presume commit (presupposizione commit).Presume commit. Si presuppone il commit di qualsiasi transazione in dubbio MS DTC.Any MS DTC in-doubt transactions are presumed to have committed.
22 Presume abort (presupposizione interruzione).Presume abort. Si presuppone l'interruzione di qualsiasi transazione in dubbio MS DTC.Any MS DTC in-doubt transactions are presumed to have aborted.

Per ridurre al minimo la possibilità di tempi di inattività prolungati, un amministratore può configurare questa opzione per presupporre il commit o l'interruzione, come illustrato nell'esempio seguente.To minimize the possibility of extended down time, an administrator might choose to configure this option either to presume commit or presume abort, as shown in the following example.

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  

In alternativa, è possibile lasciare l'opzione predefinita, no presumption, e consentire il verificarsi dell'errore dell'operazione di recupero per essere a conoscenza di un errore DTC, come illustrato nell'esempio seguente.Alternatively, the administrator might want to leave the default (no presumption) and allow recovery to fail in order to be made aware of a DTC failure, as shown in the following example.

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 è un'opzione avanzata.The in-doubt xact resolution option is an advanced option. Se si usa la stored procedure di sistema sp_configure per modificare l'impostazione, è possibile modificare in-doubt xact resolution solo quando il valore di show advanced options è impostato su 1.If you are using the sp_configure system stored procedure to change the setting, you can change in-doubt xact resolution only when show advanced options is set to 1. L'impostazione diventa effettiva immediatamente e non richiede il riavvio del server.The setting takes effect immediately without a server restart.

Nota

Impostando questa opzione in modo coerente in tutte le istanze di MicrosoftMicrosoft SQL ServerSQL Server coinvolte in qualsiasi transazione distribuita, è possibile evitare inconsistenze dei dati.Consistent configuration of this option across all MicrosoftMicrosoft SQL ServerSQL Server instances involved in any distributed transactions will help avoid data inconsistencies.

Vedere ancheSee Also

RECONFIGURE (Transact-SQL) RECONFIGURE (Transact-SQL)
Opzioni di configurazione del server (SQL Server) Server Configuration Options (SQL Server)
sp_configure (Transact-SQL)sp_configure (Transact-SQL)