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.csa...@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


_______________________________________________
pve-devel mailing list
pve-devel@pve.proxmox.com
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to