{"id":449,"date":"2025-02-28T21:47:31","date_gmt":"2025-02-28T19:47:31","guid":{"rendered":"https:\/\/www.busted.dk\/blog\/?p=449"},"modified":"2025-05-06T21:58:08","modified_gmt":"2025-05-06T19:58:08","slug":"fixing-corrupted-checkpoints-in-hyper-v-vms","status":"publish","type":"post","link":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/","title":{"rendered":"Fixing Corrupted Checkpoints in Hyper-V VMs"},"content":{"rendered":"\n<h3 class=\"wp-block-heading\">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:<\/h3>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">&#8220;Property \u2018MaxInternalSize\u2019 does not exist in class \u2018Msvm_VirtualHardDiskSettingData\u2019.&#8221;<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">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.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Resolving the Issue<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">To fix the corrupted checkpoint, we need to manually reattach the AVHDX file to the main VHDX file using the <strong>Set-VHD<\/strong> command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Set-VHD \"D:\\path\\Disk1.avhdx\" -ParentPath \"D:\\path\\Disk.vhdx\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This command restores the proper linkage between the checkpoint and the parent disk.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Handling ID Mismatch Errors<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">In many cases, after running the above command, you may encounter another error:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">&#8220;There exists ID mismatch between the differencing virtual hard disk and the parent disk.&#8221;<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">To bypass this mismatch and successfully link the disks, use the <code>-IgnoreIDMismatch<\/code> parameter:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Set-VHD \"D:\\path\\Disk1.avhdx\" -ParentPath \"D:\\path\\Disk.vhdx\" -IgnoreIDMismatch<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">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.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>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: &#8220;Property \u2018MaxInternalSize\u2019 does not exist in class \u2018Msvm_VirtualHardDiskSettingData\u2019.&#8221; This error occurs because the disk properties have changed, causing the VM to incorrectly link the checkpoint back &#8230; <a title=\"Fixing Corrupted Checkpoints in Hyper-V VMs\" class=\"read-more\" href=\"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/\" aria-label=\"Read more about Fixing Corrupted Checkpoints in Hyper-V VMs\">Read more<\/a><\/p>\n","protected":false},"author":2,"featured_media":466,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[48],"tags":[54,53],"class_list":["post-449","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hyper-v","tag-checkpoint","tag-hyper-v"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Fixing Corrupted Checkpoints in Hyper-V VMs - Peter Busted<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Peter\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/fixing-corrupted-checkpoints-in-hyper-v-vms\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/fixing-corrupted-checkpoints-in-hyper-v-vms\\\/\"},\"author\":{\"name\":\"Peter\",\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/#\\\/schema\\\/person\\\/6f1b95dddb508da8b018577701c33c9d\"},\"headline\":\"Fixing Corrupted Checkpoints in Hyper-V VMs\",\"datePublished\":\"2025-02-28T19:47:31+00:00\",\"dateModified\":\"2025-05-06T19:58:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/fixing-corrupted-checkpoints-in-hyper-v-vms\\\/\"},\"wordCount\":197,\"publisher\":{\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/#\\\/schema\\\/person\\\/6f1b95dddb508da8b018577701c33c9d\"},\"image\":{\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/fixing-corrupted-checkpoints-in-hyper-v-vms\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/8326eccc-a71d-4ece-9ed1-70d884f77f67.webp\",\"keywords\":[\"checkpoint\",\"hyper-v\"],\"articleSection\":[\"Hyper-V\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/fixing-corrupted-checkpoints-in-hyper-v-vms\\\/\",\"url\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/fixing-corrupted-checkpoints-in-hyper-v-vms\\\/\",\"name\":\"Fixing Corrupted Checkpoints in Hyper-V VMs - Peter Busted\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/fixing-corrupted-checkpoints-in-hyper-v-vms\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/fixing-corrupted-checkpoints-in-hyper-v-vms\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/8326eccc-a71d-4ece-9ed1-70d884f77f67.webp\",\"datePublished\":\"2025-02-28T19:47:31+00:00\",\"dateModified\":\"2025-05-06T19:58:08+00:00\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.busted.dk\\\/blog\\\/fixing-corrupted-checkpoints-in-hyper-v-vms\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/fixing-corrupted-checkpoints-in-hyper-v-vms\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/8326eccc-a71d-4ece-9ed1-70d884f77f67.webp\",\"contentUrl\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/8326eccc-a71d-4ece-9ed1-70d884f77f67.webp\",\"width\":1792,\"height\":1024},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/\",\"name\":\"Peter Busted\",\"description\":\"A blog about my daily work with tech and more, running since 2008\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/#\\\/schema\\\/person\\\/6f1b95dddb508da8b018577701c33c9d\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/#\\\/schema\\\/person\\\/6f1b95dddb508da8b018577701c33c9d\",\"name\":\"Peter\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/cropped-f819f80c-bdd3-4653-87cc-89c692229010.webp\",\"url\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/cropped-f819f80c-bdd3-4653-87cc-89c692229010.webp\",\"contentUrl\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/cropped-f819f80c-bdd3-4653-87cc-89c692229010.webp\",\"width\":1790,\"height\":357,\"caption\":\"Peter\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/cropped-f819f80c-bdd3-4653-87cc-89c692229010.webp\"},\"url\":\"https:\\\/\\\/www.busted.dk\\\/blog\\\/author\\\/peter\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Fixing Corrupted Checkpoints in Hyper-V VMs - Peter Busted","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/","twitter_misc":{"Written by":"Peter","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/#article","isPartOf":{"@id":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/"},"author":{"name":"Peter","@id":"https:\/\/www.busted.dk\/blog\/#\/schema\/person\/6f1b95dddb508da8b018577701c33c9d"},"headline":"Fixing Corrupted Checkpoints in Hyper-V VMs","datePublished":"2025-02-28T19:47:31+00:00","dateModified":"2025-05-06T19:58:08+00:00","mainEntityOfPage":{"@id":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/"},"wordCount":197,"publisher":{"@id":"https:\/\/www.busted.dk\/blog\/#\/schema\/person\/6f1b95dddb508da8b018577701c33c9d"},"image":{"@id":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/#primaryimage"},"thumbnailUrl":"https:\/\/www.busted.dk\/blog\/wp-content\/uploads\/2025\/02\/8326eccc-a71d-4ece-9ed1-70d884f77f67.webp","keywords":["checkpoint","hyper-v"],"articleSection":["Hyper-V"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/","url":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/","name":"Fixing Corrupted Checkpoints in Hyper-V VMs - Peter Busted","isPartOf":{"@id":"https:\/\/www.busted.dk\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/#primaryimage"},"image":{"@id":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/#primaryimage"},"thumbnailUrl":"https:\/\/www.busted.dk\/blog\/wp-content\/uploads\/2025\/02\/8326eccc-a71d-4ece-9ed1-70d884f77f67.webp","datePublished":"2025-02-28T19:47:31+00:00","dateModified":"2025-05-06T19:58:08+00:00","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.busted.dk\/blog\/fixing-corrupted-checkpoints-in-hyper-v-vms\/#primaryimage","url":"https:\/\/www.busted.dk\/blog\/wp-content\/uploads\/2025\/02\/8326eccc-a71d-4ece-9ed1-70d884f77f67.webp","contentUrl":"https:\/\/www.busted.dk\/blog\/wp-content\/uploads\/2025\/02\/8326eccc-a71d-4ece-9ed1-70d884f77f67.webp","width":1792,"height":1024},{"@type":"WebSite","@id":"https:\/\/www.busted.dk\/blog\/#website","url":"https:\/\/www.busted.dk\/blog\/","name":"Peter Busted","description":"A blog about my daily work with tech and more, running since 2008","publisher":{"@id":"https:\/\/www.busted.dk\/blog\/#\/schema\/person\/6f1b95dddb508da8b018577701c33c9d"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.busted.dk\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.busted.dk\/blog\/#\/schema\/person\/6f1b95dddb508da8b018577701c33c9d","name":"Peter","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.busted.dk\/blog\/wp-content\/uploads\/2025\/03\/cropped-f819f80c-bdd3-4653-87cc-89c692229010.webp","url":"https:\/\/www.busted.dk\/blog\/wp-content\/uploads\/2025\/03\/cropped-f819f80c-bdd3-4653-87cc-89c692229010.webp","contentUrl":"https:\/\/www.busted.dk\/blog\/wp-content\/uploads\/2025\/03\/cropped-f819f80c-bdd3-4653-87cc-89c692229010.webp","width":1790,"height":357,"caption":"Peter"},"logo":{"@id":"https:\/\/www.busted.dk\/blog\/wp-content\/uploads\/2025\/03\/cropped-f819f80c-bdd3-4653-87cc-89c692229010.webp"},"url":"https:\/\/www.busted.dk\/blog\/author\/peter\/"}]}},"_links":{"self":[{"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/posts\/449","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/comments?post=449"}],"version-history":[{"count":5,"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/posts\/449\/revisions"}],"predecessor-version":[{"id":611,"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/posts\/449\/revisions\/611"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/media\/466"}],"wp:attachment":[{"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/media?parent=449"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/categories?post=449"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.busted.dk\/blog\/wp-json\/wp\/v2\/tags?post=449"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}