Fixing Corrupted Checkpoints in Hyper-V VMs

Encountering errors when booting a Hyper-V virtual machine (VM) can be frustrating, especially when dealing with corrupted checkpoint chains. One common issue you might face is the error message:

“Property ‘MaxInternalSize’ does not exist in class ‘Msvm_VirtualHardDiskSettingData’.”

This error occurs because the disk properties have changed, causing the VM to incorrectly link the checkpoint back to its parent, ultimately corrupting the chain. Fortunately, you can resolve this issue using PowerShell.

Resolving the Issue

To fix the corrupted checkpoint, we need to manually reattach the AVHDX file to the main VHDX file using the Set-VHD command:

Set-VHD "D:\path\Disk1.avhdx" -ParentPath "D:\path\Disk.vhdx"

This command restores the proper linkage between the checkpoint and the parent disk.

Handling ID Mismatch Errors

In many cases, after running the above command, you may encounter another error:

“There exists ID mismatch between the differencing virtual hard disk and the parent disk.”

To bypass this mismatch and successfully link the disks, use the -IgnoreIDMismatch parameter:

Set-VHD "D:\path\Disk1.avhdx" -ParentPath "D:\path\Disk.vhdx" -IgnoreIDMismatch

With these PowerShell commands, you can repair a corrupted checkpoint chain and get your VM back up and running. This method ensures that your VM boots properly without requiring a full disk restore, saving you both time and effort.