| Предыдущий | Следующий |
| ERROR_LOG_PINNED_RESERVATION | ERROR_TRANSACTION_NOT_ACTIVE |
ERROR_INVALID_TRANSACTION
Что означает ERROR_INVALID_TRANSACTION
ERROR_INVALID_TRANSACTION означает, что Kernel Transaction Manager не может использовать переданный объект транзакции для текущей операции.
Дескриптор мог быть закрыт, относиться к уже завершённой транзакции либо принадлежать другой последовательности KTM-операций.
Что проверить
- Логируйте создание транзакции, её commit/rollback и момент закрытия дескриптора.
- Убедитесь, что один поток не завершает транзакцию, пока другой ещё выполняет с ней операции.
- Не переиспользуйте сохранённое числовое значение handle после закрытия.
- Проверьте состояние transaction manager/resource manager, если ошибка появляется после восстановления.
Повтор с тем же недействительным дескриптором бессмыслен. Создайте или получите корректный объект транзакции и заново выполните только ту последовательность, которую допускает его текущее состояние.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
