Site icon EfmSoft

What does HRESULT 0x8004D085 (XACT_E_REPLAYREQUEST) mean?

 
Previous Next
XACT_E_INVALIDLSN SL_REMAPPING_SP_STATUS_SYSTEM_TIME_SKEWED

XACT_E_REPLAYREQUEST

XACT_E_REPLAYREQUEST is the failure HRESULT 0x8004D085 (signed decimal -2147168123, unsigned decimal 2147799173). Its severity bit is 1, facility is 4 (FACILITY_ITF), and the facility-specific code field is 0xD085.

Recovery requires a controlled replay path rather than ordinary transaction execution

The public Windows message provides no prose beyond XACT_E_REPLAYREQUEST, and the SDK groups the range with TXF and CRM errors. The name points to replay during recovery, but the HRESULT alone does not define whether it is a command, a required state transition, or a rejection returned by a particular interface.

AllStat records the Windows message as: “XACT_E_REPLAYREQUEST” This text should be interpreted at the transaction stage described below rather than as a generic COM failure.

The contract boundary to identify

COM+ CRM recovery replays durable log records to a compensator so incomplete work can be completed or compensated. Replay is not equivalent to rerunning the original business request: it must preserve record order, transaction identity, and the compensator’s documented phases.

Likely causes to separate

Evidence worth preserving

Diagnostic sequence

Retry and recovery

Enter the component’s supported replay procedure, track each durable record, and persist completion before clearing recovery state. If the emitting API is not CRM, use the call stack and owner documentation to identify the applicable TXF/CRM replay contract before acting.

What this HRESULT does not establish

The constant’s public description is limited, so it cannot prove that replay has started, succeeded, or failed. It also does not authorize deleting log records to suppress repeated requests.

Difference from nearby transaction results

XACT_E_RECOVERYINPROGRESS indicates an active recovery pass. XACT_E_INVALIDLSN identifies an unusable log position that can prevent replay from locating the correct record.

Practical scenario

After a crash, COM+ creates the compensator and requests replay of durable CRM records. Application code mistakenly routes the event to its normal command handler. The implementation separates recovery callbacks, replays records idempotently, and records completion before the clerk is released.

Guidance for software and telemetry

Telemetry must distinguish replay generation, record sequence, and business operation. Redact payloads but retain hashes so duplicate or missing recovery records can be proven.

Official Microsoft references


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

Exit mobile version