Что означает код HRESULT 0x8004D01C (XACT_E_CONNECTION_DOWN)?

 
Предыдущий Следующий
XACT_E_TMNOTAVAILABLE XACT_E_CONNECTION_DENIED

XACT_E_CONNECTION_DOWN

Потерю соединения необходимо интерпретировать с учётом текущей фазы фиксации

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

Сопоставьте разрыв соединения с последним сообщением протокола, а не рассматривайте каждый случай как повод для сетевого повтора. Зафиксируйте, было ли подтверждено сообщение prepare, был ли результат фиксации устойчиво записан и какая сторона перезапустилась. Если ветвь находилась в состоянии Prepared, сохраните её состояние и повторно зарегистрируйте участника. Если устойчивых изменений не было, приложение может начать новую транзакцию после проверки, что неудачная попытка не вызвала внешних побочных эффектов.

Контекст разрыва, определяющий безопасную обработку

  • Фаза транзакции на момент последнего успешного сообщения.
  • Локальное состояние участника: активен, подготовлен, зафиксирован или отменён.
  • Отказавший процесс, узел или сетевой путь.
  • Данные восстановления, доступные после повторного подключения.

Ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.