Что означает код NTSTATUS 0x40190001 (STATUS_HEURISTIC_DAMAGE_POSSIBLE)?

 
Предыдущий Следующий
STATUS_SXS_RELEASE_ACTIVATION_CONTEXT STATUS_RECOVERY_NOT_NEEDED

STATUS_HEURISTIC_DAMAGE_POSSIBLE

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

STATUS_HEURISTIC_DAMAGE_POSSIBLE — Эвристическое завершение транзакции могло оставить разные resource managers в несовместимых состояниях, поэтому целостность данных не гарантируется.

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

  • Сохраните transaction/UOW, список resource managers и их durable logs, а также фактический outcome каждого участника.
  • Не начинайте новую компенсацию, пока не установлен исход старой transaction. Heuristic commit/rollback может означать, что часть дерева уже зафиксирована, а часть откатилась.
  • Сопоставьте application-level invariants и выполните проверку данных после определения состояния каждого RM. При необходимости используйте документированную reconciliation/repair процедуру приложения.

Как подтвердить исправление

Исправление подтверждается восстановленной согласованностью между участниками и отсутствием новых heuristic outcomes при повторной транзакции.

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


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