| Previous | Next |
| ERROR_VOLMGR_VOLUME_MIRRORED | ERROR_VOLMGR_NO_VALID_LOG_COPIES |
ERROR_VOLMGR_PLEX_NOT_SIMPLE_SPANNED
Identify the owner before touching the layout: volmgr plex not simple spanned
The practical meaning of ERROR_VOLMGR_PLEX_NOT_SIMPLE_SPANNED (0xC0380057) is tied to volume plex descriptor, layout type and regeneration state: the selected plex is neither simple nor spanned, which are the only layouts accepted by this operation. The result does not, by itself, prove file-system corruption or physical-media failure.
A useful record contains more than the final UI symptom: retain the first failing call, target identity, topology and state transition before management software rescans the disks.
Minimum diagnostic set
| Storage diagnostic field | Value |
|---|---|
| Narrow experiment | repeat the operation on simple, spanned and striped test plexes while preserving volume size and disk health |
| Closest comparison | ERROR_VOLMGR_PLEX_NOT_SIMPLE |
| Owning object | volume plex descriptor, layout type and regeneration state |
| Rejected invariant | the selected plex is neither simple nor spanned, which are the only layouts accepted by this operation |
| Identity and generation | volume ID, plex ordinal, plex type, member array, active/inactive state, health status and current regeneration job |
A management layer handling this result should report later recovery errors separately, because they answer a different question from the failed storage operation.
Reproduce without destructive cleanup
- Capture the API parameters and object map that led to this result; do not begin with cleanup.
- Build a passing control with the same disks or image copy and preserve volume ID, plex ordinal, plex type, member array, active/inactive state, health status and current regeneration job.
- Run the narrow transition described here: repeat the operation on simple, spanned and striped test plexes while preserving volume size and disk health.
- Compare resulting IDs, counts, health and ownership to prove the caller crossed the result invariant rather than suppressing it.
ERROR_VOLMGR_PLEX_NOT_SIMPLE describes a nearby but different storage condition; this result indicates that the selected plex is neither simple nor spanned, which are the only layouts accepted by this operation.
Mechanism-specific note
Simple, spanned, striped and parity plexes expose different address mappings. Preserve the type and the extent-to-disk order. An operation that edits linear extent boundaries cannot safely be applied to a striped or parity mapping even when the total byte length is identical.
Restore the contract
Select an operation compatible with the actual plex type and keep at least one active data copy throughout detach, repair or regeneration. Apply the change through the supported storage API, then close and reacquire affected objects before retrying.
- the first retry uses newly enumerated identifiers rather than cached handles.
- The durable metadata or provider state agrees with the success returned after it.
- A second run after close/reopen does not recreate the rejected condition.
- the nearby
ERROR_VOLMGR_PLEX_NOT_SIMPLEpath remains separately testable and separately logged.
Technical references
- Microsoft: COM error codes for VOLMGR, VHD and SDIAG — use this source to verify volmgr state and parameters.
- Microsoft: Virtual Disk Service object model — documents the supported management path relevant to this HRESULT.
- Microsoft: Pack object — defines the volmgr objects used to interpret it.
- Microsoft: Virtual Disk Service common return codes — primary API or object-model reference.
Looking for a different code? Search another status or error code.