From 20fcfcb84aa39d26c6f624849beddf2926cc03e4 Mon Sep 17 00:00:00 2001 From: Sridhar Seshasayee Date: Mon, 20 Mar 2023 18:54:57 +0530 Subject: [PATCH] osd: Set default max active recovery and backfill limits for mClock Client ops are sensitive to the recovery load and must be carefully set for osds whose underlying device is HDD. Tests revealed that recoveries with osd_max_backfills = 10 and osd_recovery_max_active_hdd = 5 were still aggressive and overwhelmed client ops. The built-in defaults for mClock are now set to: 1) osd_recovery_max_active_hdd = 3 2) osd_recovery_max_active_ssd = 10 3) osd_max_backfills = 3 The above may be modified if necessary by setting osd_mclock_override_recovery_settings option. Fixes: https://tracker.ceph.com/issues/58529 Signed-off-by: Sridhar Seshasayee --- src/osd/OSD.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 94eebdd8e9bbc..8fd0d1cb114d9 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -10255,9 +10255,9 @@ bool OSD::maybe_override_options_for_qos(const std::set *changed) !unsupported_objstore_for_qos()) { static const std::map recovery_qos_defaults { {"osd_recovery_max_active", 0}, - {"osd_recovery_max_active_hdd", 10}, - {"osd_recovery_max_active_ssd", 20}, - {"osd_max_backfills", 10}, + {"osd_recovery_max_active_hdd", 3}, + {"osd_recovery_max_active_ssd", 10}, + {"osd_max_backfills", 3}, }; // Check if we were called because of a configuration change -- 2.39.5