From: Sage Weil Date: Thu, 24 Jul 2014 01:23:56 +0000 (-0700) Subject: osd/ReplicatedPG: do not complain about missing clones when INCOMPLETE_CLONES is set X-Git-Tag: v0.84~61^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=956f28721dd98c5fb9eb410f4fe9e320b3f3eed3;p=ceph.git osd/ReplicatedPG: do not complain about missing clones when INCOMPLETE_CLONES is set When scrubbing, do not complain about missing cloens when we are in a caching mode *or* when the INCOMPLETE_CLONES flag is set. Both are indicators that we may be missing clones and that that is okay. Fixes: #8882 Signed-off-by: Sage Weil --- diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 2baa290d48fa..daa5bc0fc8df 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -11694,7 +11694,7 @@ void ReplicatedPG::_scrub(ScrubMap& scrubmap) // did we finish the last oid? if (head != hobject_t() && - pool.info.cache_mode == pg_pool_t::CACHEMODE_NONE) { + !pool.info.allow_incomplete_clones()) { osd->clog.error() << mode << " " << info.pgid << " " << head << " missing clones"; ++scrubber.shallow_errors; @@ -11755,7 +11755,7 @@ void ReplicatedPG::_scrub(ScrubMap& scrubmap) // if (!next_clone.is_min() && next_clone != soid && - pool.info.cache_mode != pg_pool_t::CACHEMODE_NONE) { + pool.info.allow_incomplete_clones()) { // it is okay to be missing one or more clones in a cache tier. // skip higher-numbered clones in the list. while (curclone != snapset.clones.rend() && @@ -11843,7 +11843,7 @@ void ReplicatedPG::_scrub(ScrubMap& scrubmap) } if (!next_clone.is_min() && - pool.info.cache_mode == pg_pool_t::CACHEMODE_NONE) { + !pool.info.allow_incomplete_clones()) { osd->clog.error() << mode << " " << info.pgid << " expected clone " << next_clone; ++scrubber.shallow_errors;