| Previous | Next |
| ERROR_VMCOMPUTE_TOO_MANY_NOTIFICATIONS | ERROR_VMCOMPUTE_UNEXPECTED_EXIT |
ERROR_VMCOMPUTE_INVALID_STATE
Compute-system operations are constrained by a lifecycle state machine
ERROR_VMCOMPUTE_INVALID_STATE means the object exists, but the requested operation does not apply to its current state. Examples include starting a system that is already starting, modifying a setting after termination, or issuing pause/resume commands in an incompatible phase.
HCS compute systems are ephemeral. Once a VM or container stops, HCS cleans up the system and most operations on the old handle are no longer valid. A blind retry of the same command therefore differs from reopening or recreating the compute system.
Evidence and corrective action
- Query compute-system properties and correlate them with pending operations before issuing the next transition.
- Serialize start, pause, resume, shutdown and terminate requests for the same identifier.
- Treat an exit notification as a terminal lifecycle event and stop scheduling ordinary control operations on that handle.
- Separate idempotent application intent from HCS API semantics; “ensure stopped” may require handling an already-stopped result explicitly.
- Investigate duplicate requests from retry logic, service restarts or competing controllers.
References
- Microsoft: Host Compute System lifecycle overview
- Microsoft: HCS API reference
- Microsoft: HcsGetComputeSystemProperties
Looking for a different code? Search another status or error code.