From ec4014702195b2e56211219c77e53393fc4b2224 Mon Sep 17 00:00:00 2001 From: Josh Durgin Date: Wed, 10 Jan 2018 21:39:28 -0500 Subject: [PATCH] config: lower default omap entries recovered at once For large omap DBs, reading 64k leads to heartbeat timeouts. There are numerous callchains leading to this recovery step, many of which do not have heartbeat handles, so for an easily backported version just change the default number of entries read. DBs approaching 100GB may require an even lower setting, but this should be good enough for most clusters, without sacrificing recovery speed. Fixes: http://tracker.ceph.com/issues/21897 Signed-off-by: Josh Durgin (cherry picked from commit 72c2076f2c14778982fb944ffade3f071a727d1a) Conflicts: src/common/options.cc (moved to config_opts.h) --- src/common/config_opts.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/config_opts.h b/src/common/config_opts.h index 062675d08ffc7..76996d743c7b0 100644 --- a/src/common/config_opts.h +++ b/src/common/config_opts.h @@ -760,7 +760,7 @@ OPTION(osd_recovery_delay_start, OPT_FLOAT, 0) OPTION(osd_recovery_max_active, OPT_INT, 3) OPTION(osd_recovery_max_single_start, OPT_INT, 1) OPTION(osd_recovery_max_chunk, OPT_U64, 8<<20) // max size of push chunk -OPTION(osd_recovery_max_omap_entries_per_chunk, OPT_U64, 64000) // max number of omap entries per chunk; 0 to disable limit +OPTION(osd_recovery_max_omap_entries_per_chunk, OPT_U64, 8096) // max number of omap entries per chunk; 0 to disable limit OPTION(osd_copyfrom_max_chunk, OPT_U64, 8<<20) // max size of a COPYFROM chunk OPTION(osd_push_per_object_cost, OPT_U64, 1000) // push cost per object OPTION(osd_max_push_cost, OPT_U64, 8<<20) // max size of push message -- 2.39.5