Поделиться через


Параметр in-doubt xact resolution

Результат по умолчанию для транзакций, которые не удалось разрешить координатору распределенных транзакций Microsoft (MS DTC), задается с помощью параметра in-doubt xact resolution. Невозможность разрешить транзакции может быть связана с простоем MS DTC или с неизвестным результатом транзакции на момент восстановления.

В следующей таблице перечислены возможные значения результатов для разрешения сомнительных транзакций.

Значение результата Описание

0

Без предположения. Восстановление завершится неуспешно, если MS DTC не сможет разрешить хотя бы одну сомнительную транзакцию.

1

Предположить фиксацию. Все сомнительные транзакции MS DTC считаются зафиксированными.

2

Предположить прерывание. Все сомнительные транзакции MS DTC считаются прерванными.

Чтобы свести к минимуму вероятность увеличения времени простоя, администратор может выбрать с помощью этого параметра либо предположительную фиксацию, либо предположительное прерывание, как показано в приведенном ниже примере.

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

Кроме того, администратор может не менять значение по умолчанию (без предположения) и допустить сбой восстановления, то есть, как показано в приведенном ниже примере, он будет узнавать о сбое DTC.

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 является дополнительным. Если для изменения этого параметра применяется хранимая процедура sp_configure, то in-doubt xact resolution можно изменить только в том случае, если параметр show advanced options принимает значение 1. Параметр вступает в силу сразу, без перезапуска сервера.

ms179586.note(ru-ru,SQL.90).gifПримечание.
Последовательная настройка этого параметра во всех экземплярах Microsoft SQL Server, которые участвуют в распределенных транзакциях, поможет избежать несогласованности данных.

См. также

Основные понятия

Установка параметров конфигурации сервера

Другие ресурсы

RECONFIGURE (Transact-SQL)
Хранимая процедура sp_configure (Transact-SQL)

Справка и поддержка

Получение помощи по SQL Server 2005