From: Sage Weil Date: Wed, 29 Oct 2014 21:45:11 +0000 (-0700) Subject: msg/Pipe: discard delay queue before incoming queue X-Git-Tag: v0.87.2~37^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F4029%2Fhead;p=ceph.git msg/Pipe: discard delay queue before incoming queue Shutdown the delayed delivery before the incoming queue in case the DelayedDelivery thread is busy queuing messages. Fixes: #9910 Signed-off-by: Sage Weil Reviewed-by: Greg Farnum (cherry picked from commit f7431cc3c25878057482007beb874c9d4473883e) --- diff --git a/src/msg/Pipe.cc b/src/msg/Pipe.cc index fc16f459b487..fb880f7fdee4 100644 --- a/src/msg/Pipe.cc +++ b/src/msg/Pipe.cc @@ -1337,9 +1337,9 @@ void Pipe::fault(bool onread) unregister_pipe(); msgr->lock.Unlock(); - in_q->discard_queue(conn_id); if (delay_thread) delay_thread->discard(); + in_q->discard_queue(conn_id); discard_out_queue(); // disconnect from Connection, and mark it failed. future messages