Что означает код HRESULT 0x8004D00A (XACT_E_NOENLIST)?

 
Предыдущий Следующий
XACT_E_NOASYNC XACT_E_NOISORETAIN

XACT_E_NOENLIST

Доступ к ресурсу не становится транзакционным до успешного присоединения

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

Зафиксируйте идентификатор диспетчера ресурсов, идентичность транзакции и точный вызов присоединения, а не диагностируйте только последующую бизнес-операцию. Типичные причины включают устаревшую регистрацию диспетчера ресурсов, недопустимый объект транзакции, сбой службы или прокси и конфигурацию поставщика, отключающую распределённое присоединение. Любая локальная работа после неудачного присоединения должна быть отменена или считаться нетранзакционной.

Какую границу присоединения проверить

  • Регистрацию диспетчера ресурсов и его постоянный идентификатор.
  • Объект транзакции или cookie распространения, переданные поставщику.
  • Началась ли локальная работа до успешного возврата из вызова присоединения.
  • События MSDTC и поставщика, созданные в момент присоединения.

Ссылки


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