From: John Spray Date: Fri, 21 Apr 2017 10:42:29 +0000 (-0400) Subject: mon: don't call propose_pending in dispatch X-Git-Tag: v12.0.3~278^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F14711%2Fhead;p=ceph.git mon: don't call propose_pending in dispatch 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 --- diff --git a/src/mon/MgrMonitor.cc b/src/mon/MgrMonitor.cc index 29fd9a66f16..c00e7809d53 100644 --- a/src/mon/MgrMonitor.cc +++ b/src/mon/MgrMonitor.cc @@ -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;