From: Zhi Zhang Date: Fri, 11 Oct 2019 03:10:48 +0000 (+0800) Subject: mds: no assert on frozen dir when scrub path X-Git-Tag: v14.2.8~20^2~31^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=0566dfc76d0d7c2c60373fdedbd4e34bf5d95a6d;p=ceph.git mds: no assert on frozen dir when scrub path It's too strict and unnecessary for asok command "scrub_path" to assert when it checked a frozen dir's rstat, just return false instead. Fixes: https://tracker.ceph.com/issues/42251 Signed-off-by: Zhi Zhang (cherry picked from commit 76cb4da65ddca986e1515f4a85e6976f20f26a9b) --- diff --git a/src/mds/CDir.cc b/src/mds/CDir.cc index d3461fba2e0..ead659fcca1 100644 --- a/src/mds/CDir.cc +++ b/src/mds/CDir.cc @@ -229,9 +229,10 @@ bool CDir::check_rstats(bool scrub) dout(25) << "check_rstats on " << this << dendl; if (!is_complete() || !is_auth() || is_frozen()) { - ceph_assert(!scrub); - dout(10) << "check_rstats bailing out -- incomplete or non-auth or frozen dir!" << dendl; - return true; + dout(3) << "check_rstats " << (scrub ? "(scrub) " : "") + << "bailing out -- incomplete or non-auth or frozen dir on " + << *this << dendl; + return !scrub; } frag_info_t frag_info;