What does HRESULT 0x87C5100F (UTC_E_ESCALATION_ALREADY_RUNNING) mean?

 
Previous Next
UTC_E_REESCALATED_TOO_QUICKLY UTC_E_PERFTRACK_ALREADY_TRACING

UTC_E_ESCALATION_ALREADY_RUNNING

Where the UTC workflow stopped: single active escalation instance

The code UTC_E_ESCALATION_ALREADY_RUNNING (0x87C5100F) belongs to DiagTrack scenario-definition processing, inside the Universal Telemetry Client/DiagTrack workflow. The key question is which UTC object rejected the request. It identifies single active escalation instance and reports that a second escalation for the scenario arrived while its prior escalation still owned the working state; it does not by itself prove that all Windows diagnostic data collection is unavailable.

DiagTrack scenarios are configuration-driven state machines. A scenario definition, its diagnostic rules, referenced profiles, triggers and action graph must all come from a compatible configuration generation. Mixing authoring files or package versions can make an otherwise valid identifier unusable.

Evidence to preserve

UTC diagnostic fieldValue
Producing layerDiagTrack scenario-definition processing
Owning state or objectsingle active escalation instance
Evidence to collectscenario and escalation IDs, active action, working directory, process/session IDs and cancellation state
Narrow comparisonallow the first run to complete, then submit exactly one new trigger
Do not confuse withUTC_E_ESCALATION_DIRECTORY_ALREADY_EXISTS can remain after a crashed run even when no escalation is active

Controlled reproduction

  1. Associate this result with one request, one scenario version and one service process ID.
  2. Save scenario and escalation IDs, active action, working directory, process/session IDs and cancellation state and the first lower-level HRESULT if one exists.
  3. Change no policy, provider set or destination except for this test: allow the first run to complete, then submit exactly one new trigger.
  4. Compare the produced artifacts and operational events, not only the top-level return value.

Nearby result: UTC_E_ESCALATION_DIRECTORY_ALREADY_EXISTS — can remain after a crashed run even when no escalation is active.

Configuration-generation check

Hash the scenario, rules and referenced profile files used and record the UTC process start time. If files changed after the process loaded them, restart only after preserving the prior generation so the comparison remains auditable.

Correction and verification

Serialize escalation requests and make completion/cleanup observable before accepting another.

Technical references


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