]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon/MgrMonitor: populate available_modules from promote_standby()
authorSage Weil <sage@newdream.net>
Fri, 12 Mar 2021 20:00:49 +0000 (15:00 -0500)
committerSage Weil <sage@newdream.net>
Mon, 15 Mar 2021 20:12:49 +0000 (15:12 -0500)
This was done in the beacon path, where there is no active mgr and we
get a new entrant, but not for this case where an existing standby is
promoted to active.

This fixes a problem during upgrade where a new (standby) mgr's modules
have a new module option but it is not reflected immediately (not until
the next beacon).

Fixes: https://tracker.ceph.com/issues/49778
Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit cd0094678d0e01fd7b74e2f6f5ff47a16a60dddd)

src/mon/MgrMonitor.cc

index 7fb8bc3290979eb63f35db5a8d996f4051467324..bf5e2ed31e8e4ea70f09fdba6d67b999abce8cc5 100644 (file)
@@ -859,6 +859,8 @@ bool MgrMonitor::promote_standby()
     auto replacement_gid = pending_map.standbys.begin()->first;
     pending_map.active_gid = replacement_gid;
     pending_map.active_name = pending_map.standbys.at(replacement_gid).name;
+    pending_map.available_modules =
+      pending_map.standbys.at(replacement_gid).available_modules;
     pending_map.active_mgr_features =
       pending_map.standbys.at(replacement_gid).mgr_features;
     pending_map.available = false;