]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: replacing bootstrap session only if handle client session message 53362/head
authorMer.xuanyi <xuanyi.meng@xtao.tech.com>
Mon, 20 Jun 2022 08:37:50 +0000 (16:37 +0800)
committerKonstantin Shalygin <k0ste@k0ste.ru>
Sun, 10 Sep 2023 08:48:24 +0000 (15:48 +0700)
Fixes: https://tracker.ceph.com/issues/56116
Signed-off-by: Mer Xuanyi <xuanyi.meng@xtaotech.com>
(cherry picked from commit 74b56b17bf8d2f21687c29d42f4b30cfea559f7d)

src/mds/MDSRank.cc

index 71b89e93e418e4ad67cd7d4a08d2bd088cffbd38..4a5f933589a1a2d90012f76b8017fe24f6b6a18f 100644 (file)
@@ -1390,7 +1390,7 @@ Session *MDSRank::get_session(const cref_t<Message> &m)
     dout(20) << "get_session have " << session << " " << session->info.inst
             << " state " << session->get_state_name() << dendl;
     // Check if we've imported an open session since (new sessions start closed)
-    if (session->is_closed()) {
+    if (session->is_closed() && m->get_type() == CEPH_MSG_CLIENT_SESSION) {
       Session *imported_session = sessionmap.get_session(session->info.inst.name);
       if (imported_session && imported_session != session) {
         dout(10) << __func__ << " replacing connection bootstrap session "