When MDCache::handle_discover() encounters a frozen dirfrag, it should
proceed if the dirfrag is being merged, but the MDS hasn't frozen all
dirfrags yet. When MDCache::handle_discover() checks if a inode is
frozen, it should use CInode::is_frozen_inode() (which doesn't check if
inode's parent dirfrag is frozen).
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
}
// frozen inode?
- if (dnl->is_primary() && dnl->get_inode()->is_frozen()) {
+ if (dnl->is_primary() && dnl->get_inode()->is_frozen_inode()) {
if (tailitem && dis->wants_xlocked()) {
dout(7) << "handle_discover allowing discovery of frozen tail " << *dnl->get_inode() << dendl;
} else if (reply->is_empty()) {