Align error handling behavior when checking for linked clones with the
rest of destroy_vm's error handling approach. In case an error occurred,
a warning is printed and the execution continues, since:

1. The same validation occurs later in the process
2. The VM removal will still be blocked if the volume has linked clones

Originally-by: Stefan Hrdlicka <s.hrdli...@proxmox.com>
 [ MK: log_warn if check fails instead of ignoring
       resolve style nits ]
Signed-off-by: Michael Köppl <m.koe...@proxmox.com>
---
 PVE/QemuServer.pm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
index 577959a4..c55617bd 100644
--- a/PVE/QemuServer.pm
+++ b/PVE/QemuServer.pm
@@ -2116,9 +2116,9 @@ sub destroy_vm {
                my $volid = $drive->{file};
                return if !$volid || $volid =~ m|^/|;
 
-               die "base volume '$volid' is still in use by linked cloned\n"
-                   if PVE::Storage::volume_is_base_and_used($storecfg, $volid);
-
+               my $result = eval { 
PVE::Storage::volume_is_base_and_used($storecfg, $volid) };
+               log_warn("failed to check if volume '$volid' is used by linked 
clones: $@") if $@;
+               die "base volume '$volid' is still in use by linked cloned\n" 
if $result;
        });
     }
 
-- 
2.39.5



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

Reply via email to