[pve-devel] [PATCH qemu-server] delete ram state files when restoring a backup

Dominik Csapak d.csapak at proxmox.com
Tue Feb 16 10:05:41 CET 2016


currently we leave orphaned vmstate files when we restore a
backup over a vm, which has snapshots with saved ram state.

this patch deletes those files on a restore.

Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
 PVE/QemuServer.pm | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
index 223c2b7..7bf3e4d 100644
--- a/PVE/QemuServer.pm
+++ b/PVE/QemuServer.pm
@@ -5562,6 +5562,18 @@ sub restore_vma_archive {
 		    PVE::Storage::vdisk_free($cfg, $volid);
 		}
 	    });
+
+	    # delete vmstate files
+	    # since after the restore we have no snapshots anymore
+	    foreach my $snapname (keys %{$oldconf->{snapshots}}) {
+		my $snap = $oldconf->{snapshots}->{$snapname};
+		if ($snap->{vmstate}) {
+		    eval { PVE::Storage::vdisk_free($cfg, $snap->{vmstate}); };
+		    if (my $err = $@) {
+			warn $err;
+		    }
+		}
+	    }
 	}
 
 	my $map = {};
-- 
2.1.4





More information about the pve-devel mailing list