msgr: restart_queue when replacing existing pipe and taking over the queue

The queue may have been previously stopped (by discard_queue()), and needs
to be restarted.

Fixes consistent failures from the mon_recovery.py integration tests.

Signed-off-by: Sage Weil <sage@inktank.com>
This commit is contained in:
Sage Weil 2012-07-01 17:23:28 -07:00
parent 5dfd2a512d
commit f7d4e39740

View File

@ -860,6 +860,7 @@ int SimpleMessenger::Pipe::accept()
in_q = existing->in_q;
in_q->lock.Lock();
in_q->pipe = this;
in_q->restart_queue();
in_q->lock.Unlock();
existing->in_q = new IncomingQueue(msgr->cct, existing);