]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
mds: set alternate_name for new fullbit dentries
authorPatrick Donnelly <pdonnell@ibm.com>
Tue, 11 Mar 2025 19:01:46 +0000 (15:01 -0400)
committerPatrick Donnelly <pdonnell@ibm.com>
Fri, 14 Mar 2025 17:45:20 +0000 (13:45 -0400)
Fixes: 9fbf37ade38bc1d057eda2459b0ccfd2ab40626a
Fixes: https://tracker.ceph.com/issues/70409
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
(cherry picked from commit 5fc94be121f8f99d0d46a2e7b41a05a9956e2fce)

src/mds/journal.cc

index 2c160af77a699584638db8e30e1686470d551ec9..22d87cc5665c62199e811df572dd3e095250ee01 100644 (file)
@@ -1316,6 +1316,7 @@ void EMetaBlob::replay(MDSRank *mds, LogSegment *logseg, int type, MDPeerUpdate
        dn->set_version(fb.dnv);
        if (fb.is_dirty()) dn->_mark_dirty(logseg);
        dout(10) << "EMetaBlob.replay added (full) " << *dn << dendl;
+        dn->set_alternate_name(mempool::mds_co::string(fb.alternate_name));
       } else {
        dn->set_version(fb.dnv);
        if (fb.is_dirty()) dn->_mark_dirty(logseg);
@@ -1323,6 +1324,7 @@ void EMetaBlob::replay(MDSRank *mds, LogSegment *logseg, int type, MDPeerUpdate
        dn->first = fb.dnfirst;
        ceph_assert(dn->last == fb.dnlast);
       }
+      ceph_assert(dn->get_alternate_name() == fb.alternate_name);
       if (lump.is_importing())
        dn->mark_auth();
 
@@ -1431,6 +1433,7 @@ void EMetaBlob::replay(MDSRank *mds, LogSegment *logseg, int type, MDPeerUpdate
        dn->first = rb.dnfirst;
        ceph_assert(dn->last == rb.dnlast);
       }
+      ceph_assert(dn->get_alternate_name() == rb.alternate_name);
       if (lump.is_importing())
        dn->mark_auth();