From bc24de020776c6c7dff871e2371c813cce27395c Mon Sep 17 00:00:00 2001 From: "Yan, Zheng" Date: Tue, 17 Apr 2018 15:55:57 +0800 Subject: [PATCH] mds: close past parents after snaprealm format gets converted Signed-off-by: "Yan, Zheng" --- src/mds/CInode.cc | 5 ++--- src/mds/SnapRealm.h | 1 - 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/mds/CInode.cc b/src/mds/CInode.cc index db7e0915842de..6cfb62e7ccb0b 100644 --- a/src/mds/CInode.cc +++ b/src/mds/CInode.cc @@ -554,11 +554,10 @@ void CInode::pop_projected_snaprealm(sr_t *next_snaprealm, bool early) bool invalidate_cached_snaps = false; if (!snaprealm) { open_snaprealm(); - } else if (next_snaprealm->past_parents.size() != - snaprealm->srnode.past_parents.size()) { + } else if (!snaprealm->srnode.past_parents.empty()) { invalidate_cached_snaps = true; // re-open past parents - snaprealm->_close_parents(); + snaprealm->close_parents(); dout(10) << " realm " << *snaprealm << " past_parents " << snaprealm->srnode.past_parents << " -> " << next_snaprealm->past_parents << dendl; diff --git a/src/mds/SnapRealm.h b/src/mds/SnapRealm.h index 90ee2ef58435c..d904852167b94 100644 --- a/src/mds/SnapRealm.h +++ b/src/mds/SnapRealm.h @@ -70,7 +70,6 @@ public: return false; } - void _close_parents() { open = false; } bool _open_parents(MDSInternalContextBase *retryorfinish, snapid_t first=1, snapid_t last=CEPH_NOSNAP); bool open_parents(MDSInternalContextBase *retryorfinish); void _remove_missing_parent(snapid_t snapid, inodeno_t parent, int err); -- 2.39.5