]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: don't cap log when there are replicated objects
authorYan, Zheng <zyan@redhat.com>
Tue, 9 Oct 2018 08:42:41 +0000 (16:42 +0800)
committerVicente Cheng <freeze.bilsted@gmail.com>
Tue, 8 Jan 2019 01:51:14 +0000 (09:51 +0800)
replicas may dirty scatter locks

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

Conflicts:
src/mds/MDCache.cc
  - maintain auth pin checking mechanism as luminous

src/mds/MDCache.cc

index f26f400c4ba9a842c85c041655273022f2fdb2e8..abc7fc9f69976fd30369d19ce29358b8296e2a9e 100644 (file)
@@ -7675,6 +7675,12 @@ bool MDCache::shutdown_pass()
   assert(!migrator->is_exporting());
   assert(!migrator->is_importing());
 
+  // replicas may dirty scatter locks
+  if (myin && myin->is_replicated()) {
+    dout(7) << "still have replicated objects" << dendl;
+    return false;
+  }
+
   if ((myin && myin->is_auth_pinned()) ||
       (mydir && mydir->is_auth_pinned())) {
     dout(7) << "still have auth pinned objects" << dendl;