What does HRESULT 0x80042931 (VDS_E_VD_DISK_ALREADY_EXPANDING) mean?

 
Previous Next
VDS_E_VD_DISK_ALREADY_OPEN VDS_E_VD_ALREADY_COMPACTING

VDS_E_VD_DISK_ALREADY_EXPANDING

This HRESULT is the duplicate-operation form of the VDS expansion state. Unlike VDS_E_VD_DISK_IS_EXPANDING, which can reject a different operation because expansion is active, this code says another expand has been requested while the first expand is still running. The second request does not queue a new target size.

Why this state matters

Because Expand is asynchronous, management code must retain the returned IVdsAsync and serialize capacity changes for each virtual disk. A retry timer that calls Expand again before observing the original final result can generate this HRESULT even when the provider is healthy.

Diagnostic focus

  • Correlate expand calls by VDS object ID and backing path and allow only one active expansion per virtual disk.
  • Retain and wait on the original IVdsAsync interface; record its final HRESULT and requested NewSize.
  • Do not interpret the duplicate request as evidence that the first target size was accepted or reached.
  • After completion, query VirtualSize and recalculate any further expansion from the current capacity.

Technical references

IVdsOpenVDisk::Expand · IVdsOpenVDisk · VDS_VDISK_STATE · VDS_VDISK_PROPERTIES · MS-VDS error codes


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