public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [PATCH ha-manager 0/2] fix param check for rules updates and
@ 2026-03-24 12:49 Michael Köppl
  2026-03-24 12:49 ` [PATCH ha-manager 1/2] api: assert validity of resources param only if defined Michael Köppl
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Michael Köppl @ 2026-03-24 12:49 UTC (permalink / raw)
  To: pve-devel

This series fixes the PUT API endpoint for updating a HA rule.
Previously, it would fail if the resources parameter was not set at all
as part of the request, even though the param is optional As part of an
E2E test run, the error showed up as

    500 update HA rules failed: Can't use an undefined value as a HASH
    reference at /usr/share/perl5/PVE/API2/HA/Rules.pm line 48.

In addition, 2/2 fixes wrong formatting introduced by a recent commit.

pve-ha-manager:

Michael Köppl (2):
  api: assert validity of resources param only if defined
  format code with perltidy

 src/PVE/API2/HA/Rules.pm   | 2 +-
 src/PVE/HA/Usage/Static.pm | 6 ++++--
 2 files changed, 5 insertions(+), 3 deletions(-)


Summary over all repositories:
  2 files changed, 5 insertions(+), 3 deletions(-)

-- 
Generated by murpp 0.11.0




^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH ha-manager 1/2] api: assert validity of resources param only if defined
  2026-03-24 12:49 [PATCH ha-manager 0/2] fix param check for rules updates and Michael Köppl
@ 2026-03-24 12:49 ` Michael Köppl
  2026-03-24 12:49 ` [PATCH ha-manager 2/2] format code with perltidy Michael Köppl
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Michael Köppl @ 2026-03-24 12:49 UTC (permalink / raw)
  To: pve-devel

The check for the validity of the resources param should only be
performed if the param was even defined, since it is not a required
parameter for updating a rule. Previously, when not setting the
resources field as part of the request, the check in the assert
function would fail due to using undefined as a hash reference, which
would stop users from updating a rule.

Signed-off-by: Michael Köppl <m.koeppl@proxmox.com>
---
 src/PVE/API2/HA/Rules.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/PVE/API2/HA/Rules.pm b/src/PVE/API2/HA/Rules.pm
index f09ab36..0b44d51 100644
--- a/src/PVE/API2/HA/Rules.pm
+++ b/src/PVE/API2/HA/Rules.pm
@@ -343,7 +343,7 @@ __PACKAGE__->register_method({
                 my $plugin = PVE::HA::Rules->lookup($type);
                 my $opts = $plugin->check_config($ruleid, $param, 0, 1);
 
-                $assert_valid_resources_param->($opts->{resources});
+                $assert_valid_resources_param->($opts->{resources}) if $opts->{resources};
                 $assert_valid_nodes_param->($opts->{nodes}) if $opts->{nodes};
 
                 my $options = $plugin->private()->{options}->{$type};
-- 
2.47.3





^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH ha-manager 2/2] format code with perltidy
  2026-03-24 12:49 [PATCH ha-manager 0/2] fix param check for rules updates and Michael Köppl
  2026-03-24 12:49 ` [PATCH ha-manager 1/2] api: assert validity of resources param only if defined Michael Köppl
@ 2026-03-24 12:49 ` Michael Köppl
  2026-03-31  9:50 ` [PATCH ha-manager 0/2] fix param check for rules updates and Daniel Kral
  2026-03-31 13:06 ` applied: " Thomas Lamprecht
  3 siblings, 0 replies; 5+ messages in thread
From: Michael Köppl @ 2026-03-24 12:49 UTC (permalink / raw)
  To: pve-devel

Signed-off-by: Michael Köppl <m.koeppl@proxmox.com>
---
 src/PVE/HA/Usage/Static.pm | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/PVE/HA/Usage/Static.pm b/src/PVE/HA/Usage/Static.pm
index 6ff2079..b60f500 100644
--- a/src/PVE/HA/Usage/Static.pm
+++ b/src/PVE/HA/Usage/Static.pm
@@ -33,8 +33,10 @@ sub add_node {
 
     my $stats = $self->{'node-stats'}->{$nodename}
         or die "did not get static node usage information for '$nodename'\n";
-    die "static node usage information for '$nodename' missing cpu count\n" if !defined($stats->{maxcpu});
-    die "static node usage information for '$nodename' missing memory\n" if !defined($stats->{maxmem});
+    die "static node usage information for '$nodename' missing cpu count\n"
+        if !defined($stats->{maxcpu});
+    die "static node usage information for '$nodename' missing memory\n"
+        if !defined($stats->{maxmem});
 
     eval { $self->{scheduler}->add_node($nodename, int($stats->{maxcpu}), int($stats->{maxmem})); };
     die "initializing static node usage for '$nodename' failed - $@" if $@;
-- 
2.47.3





^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH ha-manager 0/2] fix param check for rules updates and
  2026-03-24 12:49 [PATCH ha-manager 0/2] fix param check for rules updates and Michael Köppl
  2026-03-24 12:49 ` [PATCH ha-manager 1/2] api: assert validity of resources param only if defined Michael Köppl
  2026-03-24 12:49 ` [PATCH ha-manager 2/2] format code with perltidy Michael Köppl
@ 2026-03-31  9:50 ` Daniel Kral
  2026-03-31 13:06 ` applied: " Thomas Lamprecht
  3 siblings, 0 replies; 5+ messages in thread
From: Daniel Kral @ 2026-03-31  9:50 UTC (permalink / raw)
  To: Michael Köppl, pve-devel

On Tue Mar 24, 2026 at 1:49 PM CET, Michael Köppl wrote:
> This series fixes the PUT API endpoint for updating a HA rule.
> Previously, it would fail if the resources parameter was not set at all
> as part of the request, even though the param is optional As part of an
> E2E test run, the error showed up as
>
>     500 update HA rules failed: Can't use an undefined value as a HASH
>     reference at /usr/share/perl5/PVE/API2/HA/Rules.pm line 48.
>
> In addition, 2/2 fixes wrong formatting introduced by a recent commit.
>
> pve-ha-manager:
>
> Michael Köppl (2):
>   api: assert validity of resources param only if defined
>   format code with perltidy
>
>  src/PVE/API2/HA/Rules.pm   | 2 +-
>  src/PVE/HA/Usage/Static.pm | 6 ++++--
>  2 files changed, 5 insertions(+), 3 deletions(-)
>
>
> Summary over all repositories:
>   2 files changed, 5 insertions(+), 3 deletions(-)

Yes, seems like I only tested it with (--resources, --nodes) being

- (Some(''), None),
- (Some('...'), None),
- (Some('...'), Some('')), and
- (Some('...'), Some('...')),

but not the (None, _) variant in the end, thanks for spotting and fixing
this!

The reformatting in the second patch was already done by @Thomas on
master, but the series still applies, consider as:

Reviewed-by: Daniel Kral <d.kral@proxmox.com>
Tested-by: Daniel Kral <d.kral@proxmox.com>




^ permalink raw reply	[flat|nested] 5+ messages in thread

* applied: [PATCH ha-manager 0/2] fix param check for rules updates and
  2026-03-24 12:49 [PATCH ha-manager 0/2] fix param check for rules updates and Michael Köppl
                   ` (2 preceding siblings ...)
  2026-03-31  9:50 ` [PATCH ha-manager 0/2] fix param check for rules updates and Daniel Kral
@ 2026-03-31 13:06 ` Thomas Lamprecht
  3 siblings, 0 replies; 5+ messages in thread
From: Thomas Lamprecht @ 2026-03-31 13:06 UTC (permalink / raw)
  To: pve-devel, Michael Köppl

On Tue, 24 Mar 2026 13:49:19 +0100, Michael Köppl wrote:
> This series fixes the PUT API endpoint for updating a HA rule.
> Previously, it would fail if the resources parameter was not set at all
> as part of the request, even though the param is optional As part of an
> E2E test run, the error showed up as
> 
>     500 update HA rules failed: Can't use an undefined value as a HASH
>     reference at /usr/share/perl5/PVE/API2/HA/Rules.pm line 48.
> 
> [...]

Applied, thanks!

[1/2] api: assert validity of resources param only if defined
      commit: 9e28141aac5c2b6b2dc7ea2dbdc7b0df95ffae02
[2/2] format code with perltidy
      obsolete




^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-03-31 13:06 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-03-24 12:49 [PATCH ha-manager 0/2] fix param check for rules updates and Michael Köppl
2026-03-24 12:49 ` [PATCH ha-manager 1/2] api: assert validity of resources param only if defined Michael Köppl
2026-03-24 12:49 ` [PATCH ha-manager 2/2] format code with perltidy Michael Köppl
2026-03-31  9:50 ` [PATCH ha-manager 0/2] fix param check for rules updates and Daniel Kral
2026-03-31 13:06 ` applied: " Thomas Lamprecht

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal