| Предыдущий | Следующий |
| STATUS_TRANSACTION_SUPERIOR_EXISTS | STATUS_TRANSACTION_NOT_REQUESTED |
STATUS_TRANSACTION_REQUEST_NOT_VALID
STATUS_TRANSACTION_REQUEST_NOT_VALID означает, что объект транзакции существует, но запрошенная операция KTM не разрешена в текущей точке его жизненного цикла. Это отличается от недопустимого дескриптора: запрос отклоняет автомат состояний, а не только ссылка на объект.
KTM проводит диспетчеры ресурсов через уведомления pre-prepare, prepare, commit, rollback и recovery. Процедура завершения или ответа должна соответствовать фактически запрошенному этапу. Повтор вызова без восстановления правильного порядка этапов обычно приводит к тому же результату.
Операция нарушает последовательность состояния транзакции
- Запишите имя операции вместе с последним уведомлением транзакции и процедурой завершения для того же включения.
- Проверьте дублирующиеся обратные вызовы, запоздалые рабочие элементы и гонку между тайм-аутом или откатом и ожидающим ответом фиксации.
- Считайте исход транзакции неопределённым, пока последовательность уведомлений диспетчера транзакций не согласована.
Ссылки
- Microsoft: создание диспетчера ресурсов KTM
- Microsoft: объекты включения KTM
- Microsoft: уведомления транзакций KTM
Нужно найти другой код? Найти другой код состояния или ошибки.