[pve-devel] [PATCH qemu-server] fix: print error message that the resource mapping entry does not exist
Fiona Ebner
f.ebner at proxmox.com
Thu Apr 10 09:03:05 CEST 2025
Am 09.04.25 um 16:48 schrieb Markus Frank:
> Currently you get a "Can't use an undefined value..." error because all
> get_node_mapping functions return undefined if there is no resource
> mapping entry for the id.
>
> Fixes: a52eb3c4e ("check local resources: extend for mapped resources")
> Signed-off-by: Markus Frank <m.frank at proxmox.com>
> ---
> PVE/QemuServer.pm | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
> index ccdceedc..c1584c19 100644
> --- a/PVE/QemuServer.pm
> +++ b/PVE/QemuServer.pm
> @@ -2512,6 +2512,7 @@ sub check_local_resources {
> } elsif ($type eq 'dir') {
> $entry = PVE::Mapping::Dir::get_node_mapping($dir_map, $id, $node);
> }
> + die "no $type resource mapping for id: $id\n" if !$entry;
> if (!scalar($entry->@*)) {
Should it really be a die here instead of just adapting the if condition
to also check for definedness first? Because with a die the function
will immediately fail rather then produce the list of missing mappings
by node.
> push @{$missing_mappings_by_node->{$node}}, $key;
> }
More information about the pve-devel
mailing list