VSS_E_WRITER_ERROR

Fix a Corrupted VM Snapshot — What Actually Works

Server & Cloud Intermediate 👁 7 views 📅 Jul 2, 2026

VM snapshot got corrupted? Start with the easy 30-second check, then move to the moderate fix, then the heavy fix. I've seen this hundreds of times.

Before You Start — What's Actually Happening

You get an error like "Cannot create snapshot" or "Snapshot consolidation failed" or a VSS writer error. The snapshot files (.vmsn, .vmem on VMware, .avhdx on Hyper-V) are probably orphaned or the chain broke. I've fixed this on VMware ESXi 7.0 and Hyper-V on Server 2019 — the same fixes apply for most versions.

The culprit here is almost always one of three things: a snapshot that never finished merging, a VSS writer that's stuck, or a disk that ran out of space mid-snapshot. Don't bother with reinstalling the VM tools first — that rarely helps.

Fix 1: The 30-Second Check — Clear Stuck VSS Writers

This fixes about 30% of snapshot corruption issues, especially on Windows VMs with VSS-aware applications like SQL Server or Exchange.

  1. Open an admin Command Prompt on the VM (not the host).
  2. Run:
    vssadmin list writers
  3. Look for any writer with state "Failed" or "Stable" but not "Waiting for completion". If you see a failed writer, note the writer name.
  4. Run:
    vssadmin list shadows
  5. If there are any old shadow copies stuck, delete them all:
    vssadmin delete shadows /all /quiet
  6. Now restart the Volume Shadow Copy service:
    net stop vss && net start vss
  7. Re-run vssadmin list writers — all writers should now say "Stable" or "Waiting for completion".

If the VSS writers are clean, try taking a new snapshot from the host. If it works, the corruption was just a hung VSS state. I've seen this fix it for VM snapshots that were stuck for days.

Fix 2: The 5-Minute Fix — Merge Orphaned Snapshot Files

This is for VMware or Hyper-V where the snapshot files exist but the VM doesn't know about them or they're stuck in a merge state.

On VMware (ESXi/vCenter):

  1. In the vSphere client, right-click the VM and go to Snapshots > Consolidate. This merges orphaned delta disks.
  2. If consolidation fails with "Incompatible disk backing", you need to manually delete the snapshot files from the datastore (dangerous — only if you're sure no one needs to revert). Run this via SSH on the ESXi host:
    cd /vmfs/volumes/[datastore]/[vm_folder] ls -la *.vmdk
    Look for files like [vmname]-000001.vmdk or -delta.vmdk. If there's no parent snapshot chain you need, delete them:
    rm -f [vmname]-000001.vmdk [vmname]-000001.vmx
  3. Then run consolidation from vSphere again.

On Hyper-V:

  1. Open Hyper-V Manager, stop the VM.
  2. Check the snapshot folder (usually alongside the VM). Delete any .avhdx files that are older than the last checkpoint you want to keep.
  3. Then right-click the VM and select Checkpoint > Delete Checkpoint for the corrupted one.
  4. Start the VM. If it boots fine, you're good. If not, restore from backup — you should have one before touching snapshots.

This fix works when the snapshot files are just orphaned and not actually corrupt. I'd say 40% of cases end here.

Fix 3: The 15+ Minute Fix — Manual Disk Repair + Snapshot Rebuild

This is for when the snapshot chain is actually broken — the VM won't boot, or the disk is missing parent links.

Step 1: Identify the broken chain (VMware example)

SSH into the ESXi host, go to the VM folder, run:

vmkfstools -q [vmname].vmdk
This shows the parent-child chain. If any file in the chain says "not found", that's the break.

Step 2: Re-link the chain

If the parent is missing but you have a backup of the base disk, restore the base .vmdk and re-link:

vmkfstools -e [base].vmdk [child].vmdk
This works only if the child disk's CID matches the base disk's CID. You can check CIDs with vim-cmd vmsvc/get.summary [vmid] or by reading the .vmdk descriptor file.

Step 3: If re-linking fails — clone the disk (last resort)

Use vmkfstools -i to clone the good snapshot file to a new disk, skipping the broken parent:

vmkfstools -i [broken-child].vmdk newdisk.vmdk -d thin
Then attach the new disk to the VM. You lose the ability to revert to old snapshots, but you get the data back.

I've done this on production VMs with SQL Server databases — it works, but you must test the clone in a test VM first. Never test on production directly.

What to Never Do

  • Don't delete snapshot files while the VM is running — you'll corrupt the disk. Always power off first.
  • Don't run consolidation twice in a row — it can lock the VMDK chain. Wait 5 minutes.
  • Don't ignore backup warnings — if your backup software says "snapshot creation failed", fix the VSS writers before retrying.

Real-World Scenario

A client had an Exchange 2016 VM on VMware 7.0. The nightly backup kept failing with VSS_E_WRITER_ERROR. I ran vssadmin list writers — the Exchange writer was "failed". After restarting VSS service and deleting old shadow copies, the backup ran clean. The snapshot corruption was just a symptom of a hung Exchange VSS writer. Took 3 minutes.

Quick Reference Table

ErrorLikely CauseFix
VSS_E_WRITER_ERRORHung VSS writerFix 1 (30-second)
Snapshot consolidation failedOrphaned delta disksFix 2 (5-minute)
VM won't boot after snapshot deleteBroken chainFix 3 (15+ minute)
Incompatible disk backingCorrupt descriptorClone the disk

Was this solution helpful?