]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
msg/async: preserve peer features when replacing a connection
authorSage Weil <sage@redhat.com>
Sun, 9 Dec 2018 17:44:36 +0000 (11:44 -0600)
committerSage Weil <sage@redhat.com>
Thu, 3 Jan 2019 17:17:31 +0000 (11:17 -0600)
commit103c0238d4f39b9dd95a735142445d30e27c0b22
tree10651d02c6c3e60de90fbe3c232aaf6f9ca08a85
parent1ab352dd3105d320bd7ad2c0b37e5de750879dd5
msg/async: preserve peer features when replacing a connection

The features are now stored in the protocol implementation.  When we replace
an existing connection, copy those features so that our connect_msg_reply
calculates the correct features for the session.

This fixes an issue where a 3-mon cluster, after upgrading the two followers
but not the leader, was unable to include the (luminous) leader in the
quorum because it was seeing missing features in the connect reply, because
the new mons were replacing an old instance of the connection and weren't
copying the features, and that old instance had connect_msg.features == 0.

Add some debug lines that helped (finally) identify the problem.

Signed-off-by: Sage Weil <sage@redhat.com>
src/msg/async/ProtocolV1.cc
src/msg/async/ProtocolV2.cc