5
0
mirror of git://git.proxmox.com/git/qemu-server.git synced 2025-01-25 06:03:52 +03:00

Fix #1717: delete snapshot when vm running and drive not attached

changelog v2:
 - remove hash
 - remove check if cdrom

if we try to delete a snapshot, and that is disk from the snapshot
is not attached anymore (unused), we can't delete the snapshot
with qemu snapshot delete command (for storage which use it (qcow2,rbd,...))

example:

...
unused0: rbd:vm-107-disk-3

[snap1]
...
scsi2: rbd:vm-107-disk-3,size=1G

-> die
 qmp command 'delete-drive-snapshot' failed - Device 'drive-scsi2' not found

If drive is not attached, we need to use the storage snapshot delete command
This commit is contained in:
Alexandre Derumier 2018-07-11 13:55:53 +02:00 committed by Wolfgang Bumiller
parent c2eb7ec274
commit a2f1554b6e

View File

@ -4197,6 +4197,16 @@ sub qemu_volume_snapshot_delete {
my $running = check_running($vmid);
if($running) {
$running = undef;
my $conf = PVE::QemuConfig->load_config($vmid);
foreach_drive($conf, sub {
my ($ds, $drive) = @_;
$running = 1 if $drive->{file} eq $volid;
});
}
if ($running && do_snapshots_with_qemu($storecfg, $volid)){
vm_mon_cmd($vmid, "delete-drive-snapshot", device => $deviceid, name => $snap);
} else {