From: Sage Weil Date: Wed, 27 Jun 2012 00:10:40 +0000 (-0700) Subject: msgr: fix pipe replacement assert X-Git-Tag: v0.49~50^2~6 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=2429556a51e8f60b0d9bdee71ef7b34b367f2f38;p=ceph.git msgr: fix pipe replacement assert We may replace an existing pipe in the STANDBY state if the previous attempt failed during accept() (see previous patches). This might fix #1378. Signed-off-by: Sage Weil --- diff --git a/src/msg/SimpleMessenger.cc b/src/msg/SimpleMessenger.cc index e345bcb93171..9835c35d9e3e 100644 --- a/src/msg/SimpleMessenger.cc +++ b/src/msg/SimpleMessenger.cc @@ -824,7 +824,8 @@ int SimpleMessenger::Pipe::accept() << " == " << connect.connect_seq << dendl; assert(existing->state == STATE_CONNECTING || - existing->state == STATE_OPEN); // this will win + existing->state == STATE_OPEN || + existing->state == STATE_STANDBY); reply.tag = CEPH_MSGR_TAG_WAIT; existing->pipe_lock.Unlock(); msgr->lock.Unlock();