| Previous | Next |
| VDS_E_VD_DISK_ALREADY_EXPANDING | VDS_E_VD_ALREADY_MERGING |
VDS_E_VD_ALREADY_COMPACTING
This code is specific to duplicate compaction. VDS already has the virtual disk in its COMPACTING transition, so another IVdsOpenVDisk::Compact request is rejected rather than queued. The result differs from a general state conflict: it tells the caller that the same kind of long-running operation is already underway.
Why this state matters
Compaction changes physical backing-file allocation, not the advertised virtual capacity. A monitoring loop should follow the original asynchronous result and later compare physical size; repeatedly starting compaction cannot be used as a progress probe. The VDS object state is the correct lifecycle signal.
Diagnostic focus
- Serialize compact requests per virtual disk and store the original asynchronous operation handle.
- Use
VDS_VDISK_STATEand the originalIVdsAsyncresult to monitor completion. - Do not compare only guest-visible free space; VDS exposes separate virtual and physical size properties.
- If no caller believes it started compaction, audit concurrent administration tools and leaked management operation state.
Technical references
IVdsOpenVDisk::Compact · compact vdisk command · VDS_VDISK_STATE · VDS_VDISK_PROPERTIES · IVdsOpenVDisk
Looking for a different code? Search another status or error code.
