| Previous | Next |
| STATUS_VHD_SPARSE_HEADER_CORRUPT | STATUS_VHD_BLOCK_ALLOCATION_TABLE_CORRUPT |
STATUS_VHD_BLOCK_ALLOCATION_FAILURE
STATUS_VHD_BLOCK_ALLOCATION_FAILURE occurs when a dynamic or differencing virtual disk needs a new backing block and the provider cannot allocate it. The failure is about extending the container mapping for a virtual write, not merely about free sectors reported by the guest operating system.
This differs from STATUS_VHD_BLOCK_ALLOCATION_TABLE_CORRUPT, where the existing mapping table cannot be trusted. It also differs from STATUS_VHD_METADATA_FULL: payload-block allocation and the capacity reserved for VHDX metadata are different resources.
Check the write path, not only guest free space
- Record host filesystem free space, quotas, storage errors and the virtual-disk file growth at the time of the write.
- Determine whether the disk is dynamic or differencing; a differencing child can grow even when the parent is unchanged.
- Do not compact, merge or resize an image that has unverified allocation failures until an offline copy is available.
References
- Microsoft: VHDX format overview
- Microsoft: VHD image-format specification
- Microsoft: virtual-disk APIs
Looking for a different code? Search another status or error code.