What does HRESULT 0x8004D008 (XACT_E_ISOLATIONLEVEL) mean?

 
Previous Next
XACT_E_HEURISTICDANGER XACT_E_NOASYNC

XACT_E_ISOLATIONLEVEL

Every participant must be able to honor the effective isolation contract

XACT_E_ISOLATIONLEVEL means the requested isolation level cannot be established for this transaction manager, resource, or COM+ configuration. Isolation controls which concurrent changes may become visible; it is independent of the two-phase commit protocol that later coordinates the final outcome.

Record both the requested level and the level actually supported by each resource manager. A value accepted by one database provider may be rejected when the transaction is promoted or when another provider enlists. Lowering isolation can change application correctness, so it should follow a concurrency analysis rather than be used as a generic compatibility switch. Also check framework defaults, because they may request a stricter level than the application code states explicitly.

Isolation data needed for diagnosis

  • Requested isolation level and any retain-isolation flags.
  • Provider-specific supported levels and promotion behavior.
  • Whether failure occurs before or after a second resource enlists.
  • Concurrency guarantees the business operation actually requires.

References


Looking for a different code? Search another status or error code.