From e4ecf26a8ef622f8290129a682afb1c64b3e7e00 Mon Sep 17 00:00:00 2001 From: "Yan, Zheng" Date: Tue, 28 Nov 2017 17:06:47 +0800 Subject: [PATCH] mds: handle client reconnect gather race Fixes: http://tracker.ceph.com/issues/22263 Signed-off-by: "Yan, Zheng" --- src/mds/Server.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mds/Server.cc b/src/mds/Server.cc index e72d8a7504e..f7dceee98b9 100644 --- a/src/mds/Server.cc +++ b/src/mds/Server.cc @@ -895,7 +895,7 @@ void Server::handle_client_reconnect(MClientReconnect *m) dout(10) << " reconnect_start " << reconnect_start << " delay " << delay << dendl; bool deny = false; - if (!mds->is_reconnect()) { + if (!mds->is_reconnect() || mds->get_want_state() != CEPH_MDS_STATE_RECONNECT || reconnect_evicting) { // XXX maybe in the future we can do better than this? dout(1) << " no longer in reconnect state, ignoring reconnect, sending close" << dendl; mds->clog->info() << "denied reconnect attempt (mds is " -- 2.47.3