From: Sage Weil Date: Thu, 3 Apr 2014 18:52:27 +0000 (-0700) Subject: mon/OSDMonitor: do not reply to MOSDMarkMeDown if ack is not requested X-Git-Tag: v0.81~59^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F1601%2Fhead;p=ceph.git mon/OSDMonitor: do not reply to MOSDMarkMeDown if ack is not requested If a reply isn't requested, do not bother to send one. Note that old clients did not request an ack, but we will infer that they do from the message encoding (see previous commit). Signed-off-by: Sage Weil --- diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index 1b1e9cb5b52..30402d03fdd 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -903,8 +903,10 @@ bool OSDMonitor::preprocess_mark_me_down(MOSDMarkMeDown *m) return false; reply: - Context *c(new C_AckMarkedDown(this, m)); - c->complete(0); + if (m->request_ack) { + Context *c(new C_AckMarkedDown(this, m)); + c->complete(0); + } return true; } @@ -917,7 +919,8 @@ bool OSDMonitor::prepare_mark_me_down(MOSDMarkMeDown *m) mon->clog.info() << "osd." << target_osd << " marked itself down\n"; pending_inc.new_state[target_osd] = CEPH_OSD_UP; - wait_for_finished_proposal(new C_AckMarkedDown(this, m)); + if (m->request_ack) + wait_for_finished_proposal(new C_AckMarkedDown(this, m)); return true; }