From: Yan, Zheng Date: Tue, 2 Jan 2018 07:55:50 +0000 (+0800) Subject: client: don't mark snap directory complete when its dirstat is empty X-Git-Tag: v13.1.0~413^2~13 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=81adc4ebe6a75f0560d6911fed3679a14b659dd9;p=ceph.git client: don't mark snap directory complete when its dirstat is empty MDS has trouble in tracking dirstat for snap inode. Snap directory inode's dirstat can be inaccuracy. Signed-off-by: "Yan, Zheng" --- diff --git a/src/client/Client.cc b/src/client/Client.cc index 8c25ae468fd..2dfb5cbd491 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -909,6 +909,7 @@ Inode * Client::add_update_inode(InodeStat *st, utime_t from, // setting I_COMPLETE needs to happen after adding the cap if (updating_inode && + in->snapid == CEPH_NOSNAP && in->is_dir() && (st->cap.caps & CEPH_CAP_FILE_SHARED) && (issued & CEPH_CAP_FILE_EXCL) == 0 &&