From: Sage Weil Date: Fri, 19 Jan 2018 17:20:06 +0000 (-0600) Subject: osd: piecewise scrub X-Git-Tag: v12.2.6~98^2~25 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=1d618cd6bc4fb81a5528cefb4d674f62a099e112;p=ceph.git osd: piecewise scrub Perform scrub in stages, with each unit of work requeuing an item in the work queue. Signed-off-by: Sage Weil (cherry picked from commit bf16f59887d6b7624112212cecead3ebec48b6f9) Conflicts: src/osd/PG.cc src/osd/ReplicatedBackend.cc - encode -> ::encode --- diff --git a/src/common/legacy_config_opts.h b/src/common/legacy_config_opts.h index 3f3e56d928c1..8d3ff1497c24 100644 --- a/src/common/legacy_config_opts.h +++ b/src/common/legacy_config_opts.h @@ -784,6 +784,7 @@ OPTION(osd_scrub_auto_repair_num_errors, OPT_U32) // only auto-repair when num OPTION(osd_deep_scrub_interval, OPT_FLOAT) // once a week OPTION(osd_deep_scrub_randomize_ratio, OPT_FLOAT) // scrubs will randomly become deep scrubs at this rate (0.15 -> 15% of scrubs are deep) OPTION(osd_deep_scrub_stride, OPT_INT) +OPTION(osd_deep_scrub_keys, OPT_INT) OPTION(osd_deep_scrub_update_digest_min_age, OPT_INT) // objects must be this old (seconds) before we update the whole-object digest on scrub OPTION(osd_skip_data_digest, OPT_BOOL) OPTION(osd_class_dir, OPT_STR) // where rados plugins are stored diff --git a/src/common/options.cc b/src/common/options.cc index 9e20be04b135..7f3bff845231 100644 --- a/src/common/options.cc +++ b/src/common/options.cc @@ -2563,6 +2563,10 @@ std::vector