Am 20.05.25 um 11:08 schrieb Michael Köppl: > Align error handling behavior when checking for linked clones with the > rest of destroy_vm's error handling approach. Unlike the LXC destroy > implementation, this version continues execution when encountering > errors during the check, since: > > 1. The same validation occurs later in the process > 2. This prevents potential crashes
What kind of crashes? > 3. The VM removal will still be blocked if the volume has linked clones > > Align error handling behavior when checking for linked clones with the > rest of destroy_vm's error handling approach. Unlike the LXC implementation, > this version continues execution when encountering errors during the check, > since: This paragraph is duplicated. > > Co-authored-by: Stefan Hrdlicka The qemu-server patches still need to have the trailer adapted. > Signed-off-by: Michael Köppl <m.koe...@proxmox.com> > --- > PVE/QemuServer.pm | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm > index 577959a4..e02bf7d4 100644 > --- a/PVE/QemuServer.pm > +++ b/PVE/QemuServer.pm > @@ -2116,9 +2116,10 @@ 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); > - > + # errors that occur during this check are not propagated since > the > + # same check is done again in vdisk_free For containers, you do propagate the error. Please adapt the code there too to make it consistent. I'd also add a warning or print an informational message about the failure, rather than quietly ignoring it. > + my $result = eval { > PVE::Storage::volume_is_base_and_used($storecfg, $volid) }; > + die "base volume '$volid' is still in use by linked cloned\n" > if $result; > }); > } > _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel