summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mds/CDir.cc4
-rw-r--r--src/mds/CDir.h1
2 files changed, 3 insertions, 2 deletions
diff --git a/src/mds/CDir.cc b/src/mds/CDir.cc
index c478e4c4c01..6547b94b1d4 100644
--- a/src/mds/CDir.cc
+++ b/src/mds/CDir.cc
@@ -1414,7 +1414,7 @@ void CDir::_fetched(bufferlist &bl, const string& want_dn)
log_mark_dirty();
// mark complete, !fetching
- state_set(STATE_COMPLETE);
+ mark_complete();
state_clear(STATE_FETCHING);
auth_unpin(this);
@@ -1689,7 +1689,7 @@ void CDir::_fetched(bufferlist &bl, const string& want_dn)
log_mark_dirty();
// mark complete, !fetching
- state_set(STATE_COMPLETE);
+ mark_complete();
state_clear(STATE_FETCHING);
auth_unpin(this);
diff --git a/src/mds/CDir.h b/src/mds/CDir.h
index 86da4e5dfd3..f131d834ca0 100644
--- a/src/mds/CDir.h
+++ b/src/mds/CDir.h
@@ -286,6 +286,7 @@ protected:
public:
CDir(CInode *in, frag_t fg, MDCache *mdcache, bool auth);
~CDir() {
+ remove_bloom();
g_num_dir--;
g_num_dirs++;
}