]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: don't call propose_pending in dispatch 14711/head
authorJohn Spray <john.spray@redhat.com>
Fri, 21 Apr 2017 10:42:29 +0000 (06:42 -0400)
committerJohn Spray <john.spray@redhat.com>
Fri, 21 Apr 2017 10:46:57 +0000 (06:46 -0400)
This was happening indirectly because the command handling
code was calling tick() as a shortcut to "promote something"
and tick calls propose_pending because.

Fixes: http://tracker.ceph.com/issues/19738
Signed-off-by: John Spray <john.spray@redhat.com>
src/mon/MgrMonitor.cc

index 29fd9a66f16bb64a48c612cd6747a4b2406b113a..c00e7809d53a6c535af066402773c2843b0ade0e 100644 (file)
@@ -510,8 +510,8 @@ bool MgrMonitor::prepare_command(MonOpRequestRef op)
       }
     }
 
-    if (changed) {
-      tick();
+    if (changed && pending_map.active_gid == 0) {
+      promote_standby();
     }
   } else {
     r = -ENOSYS;