| Previous | Next |
| VDS_E_PACK_ONLINE | VDS_E_INVALID_MEMBER_COUNT |
VDS_E_INVALID_PLEX_COUNT
VDS separates a logical volume from its plexes. Every volume has at least one plex; only a mirrored volume can have multiple plexes, and each plex contains a copy of the volume data. Simple, spanned, striped, and parity volumes use one plex even when that plex contains multiple members or extents. A caller that derives plex count from disk count can therefore build an invalid topology.
Why this state matters
The count should be validated against the requested volume type and the actual plex objects, not against the number of selected disks. A three-disk RAID-5 layout still has one parity plex with multiple members, while a mirror has multiple plexes. Enumerate existing plexes before add, break, remove, repair, or migration workflows that reconstruct topology.
Diagnostic focus
- Record the requested
VDS_VOLUME_TYPEand the plex count encoded by the operation. - Use
IVdsVolume::QueryPlexeswhen operating on an existing volume rather than inferring plexes from disk extents. - Distinguish plex count from member count: they describe different levels of the VDS storage model.
- For mirror changes, preserve the plex IDs and status so the last usable copy is not accidentally targeted.
Technical references
Volume Object · Volume Plex Object · MS-VDS IVdsVolume::QueryPlexes · VDS_VOLUME_TYPE · VDS_VOLUME_PLEX_PROP
Looking for a different code? Search another status or error code.
