Что означает код HRESULT 0x8004D012 (XACT_E_WRONGUOW)?

 
Предыдущий Следующий
XACT_E_WRONGSTATE XACT_E_XTIONEXISTS

XACT_E_WRONGUOW

Завершается не та ветвь, которую ожидает ресурс

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

Сопоставляйте идентификатор распределённой транзакции, идентификатор ветви диспетчера ресурсов и локальный дескриптор транзакции на каждой границе. Ошибки пула могут вернуть соединение, всё ещё связанное со старой единицей работы, а код восстановления может загрузить не ту подготовленную запись после усечения идентификатора или изменения кодировки. Не подставляйте идентификатор текущей ambient-транзакции; восстановите точный идентификатор, сохранённый вместе с ветвью, либо выполните откат через поддерживаемую процедуру восстановления диспетчера ресурсов.

Идентификаторы для побайтового сравнения

  • Глобальный идентификатор транзакции или единицы работы.
  • Идентификаторы ветви диспетчера ресурсов и зачисления.
  • Локальный дескриптор транзакции базы данных, очереди или журнала.
  • Сериализованная запись восстановления до и после передачи или хранения.

Ссылки


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