What does Windows error code 684 (ERROR_UNWIND_CONSOLIDATE) mean?

 
Previous Next
ERROR_PLUGPLAY_QUERY_VETOED ERROR_REGISTRY_HIVE_RECOVERED

ERROR_UNWIND_CONSOLIDATE

What ERROR_UNWIND_CONSOLIDATE means

This status participates in advanced native exception handling where the unwinder transfers control to a consolidated frame. It is generally diagnostic evidence, not an ordinary Win32 failure returned to application UI.

Where it appears

  • language-runtime exception dispatch
  • stack unwinding across optimized or generated code
  • debugger analysis of native crashes

Likely causes

  • intentional runtime frame consolidation
  • exception handling across funclets or generated frames
  • damaged unwind metadata or stack state

Evidence to collect

  1. exception record and context record
  2. full native stack with unwind information
  3. module versions and symbol files
  4. compiler options and runtime version

How to respond

Do not convert this internal unwind status into a generic retry. Runtime authors should validate unwind metadata and frame lifetime; application teams should analyze the original exception that caused unwinding.

Diagnostic interpretation

For this particular status, the decisive evidence is exception record and context record, full native stack with unwind information. Those details separate the documented condition from unrelated failures that happen to occur nearby.

Record the numeric code together with the symbolic name ERROR_UNWIND_CONSOLIDATE, the API or subsystem that produced it, and the first preceding failure. For ERROR_UNWIND_CONSOLIDATE, a later cleanup occurrence may describe a consequence instead of the initiating defect.

Example

A diagnostic trace records ERROR_UNWIND_CONSOLIDATE after an operation changes subsystem state. The ERROR_UNWIND_CONSOLIDATE investigation should follow the first state-changing call, validate its resulting state, and classify later cleanup messages as secondary evidence.

Implementation guidance

Code handling ERROR_UNWIND_CONSOLIDATE should distinguish a terminal failure from a warning, progress indication, or request to repeat after a defined state change. When handling ERROR_UNWIND_CONSOLIDATE, preserve handles and output fields only where the originating API explicitly keeps them valid. The ERROR_UNWIND_CONSOLIDATE path needs bounded retries and cleanup that tolerates partial initialization.

Validation after remediation

Repeat one controlled operation that previously produced ERROR_UNWIND_CONSOLIDATE. For ERROR_UNWIND_CONSOLIDATE, verify both disappearance of the status and completion of the specific state transition described above. Adjacent messages around ERROR_UNWIND_CONSOLIDATE must also be reviewed so a fallback is not mistaken for a complete repair.

References


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