From: Yan, Zheng Date: Mon, 6 Feb 2017 03:03:38 +0000 (+0800) Subject: mds: avoid zero replica_nonce X-Git-Tag: v12.0.1~266^2~17 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=9c16f83a59f03badf5aecb52c44d5c557b876c22;p=ceph.git mds: avoid zero replica_nonce Signed-off-by: "Yan, Zheng" --- diff --git a/src/mds/CDentry.h b/src/mds/CDentry.h index d280eece5d5..aff459421d8 100644 --- a/src/mds/CDentry.h +++ b/src/mds/CDentry.h @@ -315,6 +315,7 @@ public: _mark_dirty(ls); if (!replica_map.empty()) get(PIN_REPLICATED); + replica_nonce = 0; } // -- locking -- diff --git a/src/mds/CInode.cc b/src/mds/CInode.cc index 0f382d959c0..ea81ed8c970 100644 --- a/src/mds/CInode.cc +++ b/src/mds/CInode.cc @@ -3611,6 +3611,7 @@ void CInode::decode_import(bufferlist::iterator& p, ::decode(replica_map, p); if (!replica_map.empty()) get(PIN_REPLICATED); + replica_nonce = 0; // decode fragstat info on bounding cdirs bufferlist bounding; diff --git a/src/mds/Migrator.cc b/src/mds/Migrator.cc index 43537fd8087..98279d0f2f5 100644 --- a/src/mds/Migrator.cc +++ b/src/mds/Migrator.cc @@ -2410,6 +2410,7 @@ void Migrator::import_reverse(CDir *dir) cur->state_clear(CDir::STATE_AUTH); cur->remove_bloom(); cur->clear_replica_map(); + cur->set_replica_nonce(CDir::EXPORT_NONCE); if (cur->is_dirty()) cur->mark_clean(); @@ -2420,6 +2421,7 @@ void Migrator::import_reverse(CDir *dir) // dentry dn->state_clear(CDentry::STATE_AUTH); dn->clear_replica_map(); + dn->set_replica_nonce(CDentry::EXPORT_NONCE); if (dn->is_dirty()) dn->mark_clean(); @@ -2428,6 +2430,7 @@ void Migrator::import_reverse(CDir *dir) CInode *in = dn->get_linkage()->get_inode(); in->state_clear(CDentry::STATE_AUTH); in->clear_replica_map(); + in->set_replica_nonce(CInode::EXPORT_NONCE); if (in->is_dirty()) in->mark_clean(); in->clear_dirty_rstat();