By default, set a higher priority for recovery of rgw metadata pools.
Signed-off-by: Sage Weil <sage@redhat.com>
.set_min_max(1, 1024)
.set_description("pg_num_min value for RGW metadata (omap-heavy) pools"),
+ Option("rgw_rados_pool_recovery_priority", Option::TYPE_UINT, Option::LEVEL_ADVANCED)
+ .set_default(5)
+ .set_min_max(-10, 10)
+ .set_description("recovery_priority value for RGW metadata (omap-heavy) pools"),
+
Option("rgw_zone", Option::TYPE_STR, Option::LEVEL_ADVANCED)
.set_default("")
.set_description("Zone name")
pool.name + "\", \"var\": \"pg_num_min\", \"val\": \"" +
stringify(min) + "\"}",
inbl, NULL, NULL);
- if (r < 0) {
- dout(10) << __func__ << " warning: failed to set pg_num_min on "
- << pool.name << dendl;
+ if (r < 0) {
+ dout(10) << __func__ << " warning: failed to set pg_num_min on "
+ << pool.name << dendl;
+ }
+ // set recovery_priority
+ int p = g_conf().get_val<uint64_t>("rgw_rados_pool_recovery_priority");
+ r = rados->mon_command(
+ "{\"prefix\": \"osd pool set\", \"pool\": \"" +
+ pool.name + "\", \"var\": \"recovery_priority\": \"" +
+ stringify(p) + "\"}",
+ inbl, NULL, NULL);
+ if (r < 0) {
+ dout(10) << __func__ << " warning: failed to set recovery_priority on "
+ << pool.name << dendl;
}
}
} else if (r < 0) {