]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: update client metadata for already open session 18299/head
authorYan, Zheng <zyan@redhat.com>
Tue, 10 Oct 2017 09:47:33 +0000 (17:47 +0800)
committerPatrick Donnelly <pdonnell@redhat.com>
Sat, 14 Oct 2017 00:33:33 +0000 (17:33 -0700)
session opened by Server::prepare_force_open_sessions() has no
client metadata.

Fixes: http://tracker.ceph.com/issues/21746
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
(cherry picked from commit 9d5c92a3367369789836d8669aa421074c69e4f3)

src/mds/Server.cc

index 3d34bd4c1caa0f45835b4af664da5215d5a5b4fc..a1d9d770b1a702c2672c06f7392d5995852a0867 100644 (file)
@@ -341,6 +341,9 @@ void Server::handle_client_session(MClientSession *m)
        session->is_stale() ||
        session->is_killing()) {
       dout(10) << "currently open|opening|stale|killing, dropping this req" << dendl;
+      // set client metadata for session opened by prepare_force_open_sessions
+      if (!m->client_meta.empty())
+       session->set_client_metadata(m->client_meta);
       m->put();
       return;
     }