From d66b726c0ecc2d3cc22b060f6a24f7e71204cfe2 Mon Sep 17 00:00:00 2001 From: Dominik Csapak Date: Fri, 5 Nov 2021 15:23:47 +0100 Subject: [PATCH] ceph: fix version check shortcut with 'get_node_kv', we get a hash which contains the value for all nodes in the cluster (with the nodename as key), so we have to use the value from the hash corresponding to our nodename. also the 'str' property is inside the 'version' hash Signed-off-by: Dominik Csapak --- PVE/Ceph/Services.pm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/PVE/Ceph/Services.pm b/PVE/Ceph/Services.pm index ad41dbe4..5340f5fc 100644 --- a/PVE/Ceph/Services.pm +++ b/PVE/Ceph/Services.pm @@ -52,9 +52,10 @@ sub broadcast_ceph_versions { if ($version) { if (my $old = PVE::Cluster::get_node_kv("ceph-versions")) { - $old = eval { decode_json($old) }; + my $nodename = PVE::INotify::nodename(); + $old = eval { decode_json($old->{$nodename}) }; warn $@ if $@; # should not happen - if (defined($old) && $old->{buildcommit} eq $buildcommit && $old->{str} eq $version) { + if (defined($old) && $old->{buildcommit} eq $buildcommit && $old->{version}->{str} eq $version) { return; # up to date, nothing to do so avoid (not exactly cheap) broadcast } }