]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: do not submit omap_rm_keys if the dir is the basedir of merge. 36178/head
authorChencan <chen.can2@zte.com.cn>
Tue, 30 Jun 2020 11:30:12 +0000 (19:30 +0800)
committerNathan Cutler <ncutler@suse.com>
Sat, 18 Jul 2020 17:27:13 +0000 (19:27 +0200)
Fixes: https://tracker.ceph.com/issues/46273
Signed-off-by: Chencan <chen.can2@zte.com.cn>
(cherry picked from commit d8a6715b0740bebfe7922391868aae2df304db6b)

src/mds/CDir.cc [changed mode: 0644->0755]

old mode 100644 (file)
new mode 100755 (executable)
index ead659f..fefddf2
@@ -2224,10 +2224,11 @@ void CDir::_omap_commit(int op_prio)
   };
 
   if (state_test(CDir::STATE_FRAGMENTING)) {
+    assert(committed_version == 0);
     for (auto p = items.begin(); p != items.end(); ) {
       CDentry *dn = p->second;
       ++p;
-      if (!dn->is_dirty() && dn->get_linkage()->is_null())
+      if (dn->get_linkage()->is_null())
        continue;
       write_one(dn);
     }