avoid adding bare-bones dirfrag that has not yet been fetched from
the disk to the journal.
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
CDir *dir = p->second;
dout(20) << fg << " " << *dir << dendl;
- bool update = dir->is_auth() && !dir->is_frozen();
+ bool update = dir->is_auth() && dir->get_version() != 0 && !dir->is_frozen();
fnode_t *pf = dir->get_projected_fnode();
if (update)
CDir *dir = p->second;
dout(20) << fg << " " << *dir << dendl;
- bool update = dir->is_auth() && !dir->is_frozen();
+ bool update = dir->is_auth() && dir->get_version() != 0 && !dir->is_frozen();
fnode_t *pf = dir->get_projected_fnode();
if (update)
p != dirfrags.end();
++p) {
CDir *dir = p->second;
- if (!dir->is_auth() || dir->is_frozen())
+ if (!dir->is_auth() || dir->get_version() == 0 || dir->is_frozen())
continue;
if (type == CEPH_LOCK_IDFT)