]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
msg/Pipe: if we send a wait, make sure we follow through
authorSage Weil <sage@inktank.com>
Thu, 26 Jul 2012 23:50:30 +0000 (16:50 -0700)
committerSage Weil <sage@inktank.com>
Fri, 27 Jul 2012 17:45:21 +0000 (10:45 -0700)
Mark our outgoing connection attempt if we send a WAIT in accept().  This
ensures we don't go to standby or closed in fault() on the outgoing
connection for any reason.

Signed-off-by: Sage Weil <sage@inktank.com>
src/msg/Pipe.cc

index 2a89f9b7a5b70a28328549d2e1c85dfd935dc46d..609c6c795f88ee01c07af60e4ebcbde23a6cd0f8 100644 (file)
@@ -382,6 +382,8 @@ int Pipe::accept()
                             << " == " << connect.connect_seq
                             << dendl;
          assert(existing->state == STATE_CONNECTING);
+         // make sure our outgoing connection will follow through
+         existing->_send_keepalive();
          reply.tag = CEPH_MSGR_TAG_WAIT;
          existing->pipe_lock.Unlock();
          msgr->lock.Unlock();