From e1696746a221c82c97d6d25fd0d70d7cf4d9c10b Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Mon, 4 Aug 2008 10:37:43 -0700 Subject: [PATCH] mds: adjust open_parent on replay relinking --- src/mds/journal.cc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/mds/journal.cc b/src/mds/journal.cc index 0d45943cd4fb0..63327fab688bd 100644 --- a/src/mds/journal.cc +++ b/src/mds/journal.cc @@ -419,6 +419,15 @@ void EMetaBlob::replay(MDS *mds, LogSegment *logseg) } in->first = p->dnfirst; } + + // verify open snaprealm parents + if (in->snaprealm) { + SnapRealm *actual = in->get_parent_dn()->get_dir()->inode->find_snaprealm(); + if (actual != in->snaprealm->parent) { + dout(10) << "EMetaBlob.replay fixing snaprealm open_parent" << dendl; + in->snaprealm->change_open_parent_to(actual); + } + } } // remote dentries -- 2.39.5