]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
msg/async/Protocol*: send keep alive if existing wins
authorxie xingguo <xie.xingguo@zte.com.cn>
Wed, 27 Feb 2019 07:34:46 +0000 (15:34 +0800)
committerxie xingguo <xie.xingguo@zte.com.cn>
Fri, 1 Mar 2019 01:31:35 +0000 (09:31 +0800)
commit61b9432ef9a3847eceb96f8d5a854567c49bbf61
treeec5630456b0f0ee3ec33ef62d7944348d636d957
parentc1112928b7926fdc0a53d254a5f72055728f3b58
msg/async/Protocol*: send keep alive if existing wins

This is a follow-up fix of https://github.com/ceph/ceph/pull/25754.

It turns out the existing connection would win the connection race
and then be stuck in the __replacing__ stage forever without being
aware of that the underlying Pipe is actually broken.

Fix by forcing existing sending keepalive periodically __too__.

Fixes: http://tracker.ceph.com/issues/38493
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
src/msg/async/ProtocolV1.cc
src/msg/async/ProtocolV2.cc