Что означает код HRESULT 0xC800044F (hrTransTooDeep)?

 
Предыдущий Следующий
hrWriteConflict hrInvalidSesid

hrTransTooDeep

Что означает hrTransTooDeep

hrTransTooDeep (0xC800044F) — слишком большая глубина вложенности транзакций.

Что проверить

Зафиксируйте базу, таблицу или сессию ESE и первый API Jet/ESENT, который вернул hrTransTooDeep.

  • Проверьте состояние базы и журналов ESE, свободные ресурсы процесса и состояние активной транзакции именно в момент отказа.
  • Если ошибка возникла при восстановлении или работе с журналами, сопоставьте поколения журналов, контрольную точку и выбранный набор файлов; не подменяйте восстановление простым повтором операции.

Исходная формулировка

  • the session exceeded the supported nesting depth of transaction save points.
  • Typical API surface — JetBeginSession, JetBeginTransaction, JetCommitTransaction, JetRollback, and update APIs
  • First corrective direction — flatten helper-level transactions or make callers explicitly own the outer transaction
  • Apply the narrow correction: flatten helper-level transactions or make callers explicitly own the outer transaction.
  • The key comparison for this result is this: hrNotInTransaction reports no save point; this code reports too many nested save points.

Технические ссылки


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