]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mon/MgrMonitor: only try to update always_on_modules if >= NAUTILUS 26794/head
authorSage Weil <sage@redhat.com>
Thu, 7 Mar 2019 19:42:34 +0000 (13:42 -0600)
committerSage Weil <sage@redhat.com>
Thu, 7 Mar 2019 22:35:35 +0000 (16:35 -0600)
Pre-nautilus mgrmap doesn't encode have this field, so we'll just loop.

Signed-off-by: Sage Weil <sage@redhat.com>
src/mon/MgrMonitor.cc

index 586f64a526b60241c5deecb9951680512d7de781..e7608a1174b42b284bdbab3ee57a98cad771ecf0 100644 (file)
@@ -651,10 +651,12 @@ void MgrMonitor::on_active()
   if (mon->is_leader()) {
     mon->clog->debug() << "mgrmap e" << map.epoch << ": " << map;
 
-    if (pending_map.always_on_modules != always_on_modules) {
+    if (HAVE_FEATURE(mon->get_quorum_con_features(), SERVER_NAUTILUS) &&
+       pending_map.always_on_modules != always_on_modules) {
       pending_map.always_on_modules = always_on_modules;
-      dout(4) << "always on modules changed "
-        << pending_map.get_always_on_modules() << dendl;
+      dout(4) << "always on modules changed, pending "
+             << pending_map.get_always_on_modules()
+             << " != wanted " << always_on_modules << dendl;
       propose_pending();
     }
   }