We need to allow blocking osdmap trimming to test osdmap pruning.
Signed-off-by: Joao Eduardo Luis <joao@suse.de>
"to run on production systems, or would only be relevant while "
"testing or debugging."),
+ Option("mon_debug_block_osdmap_trim", Option::TYPE_BOOL, Option::LEVEL_DEV)
+ .set_default(false)
+ .set_description("Block OSDMap trimming while the option is enabled.")
+ .set_long_description(
+ "Blocking OSDMap trimming may be quite helpful to easily reproduce "
+ "states in which the monitor keeps (hundreds of) thousands of "
+ "osdmaps."),
+
Option("mon_debug_deprecated_as_obsolete", Option::TYPE_BOOL, Option::LEVEL_DEV)
.set_default(false)
.set_description(""),
"mon_osdmap_full_prune_txsize",
// debug options - observed, not handled
"mon_debug_extra_checks",
+ "mon_debug_block_osdmap_trim",
NULL
};
return KEYS;
return 0;
}
}
+
+ if (g_conf->get_val<bool>("mon_debug_block_osdmap_trim")) {
+ dout(0) << __func__
+ << " blocking osdmap trim"
+ " ('mon_debug_block_osdmap_trim' set to 'true')"
+ << dendl;
+ return 0;
+ }
+
{
epoch_t floor = get_min_last_epoch_clean();
dout(10) << " min_last_epoch_clean " << floor << dendl;