OPTION(osd_scrub_finalize_thread_timeout, OPT_INT, 60*10)
OPTION(osd_scrub_invalid_stats, OPT_BOOL, true)
OPTION(osd_remove_thread_timeout, OPT_INT, 60*60)
+OPTION(osd_remove_thread_suicide_timeout, OPT_INT, 10*60*60)
OPTION(osd_command_thread_timeout, OPT_INT, 10*60)
OPTION(osd_command_thread_suicide_timeout, OPT_INT, 15*60)
OPTION(osd_age, OPT_FLOAT, .8)
scrub_wq(this, cct->_conf->osd_scrub_thread_timeout, &disk_tp),
scrub_finalize_wq(cct->_conf->osd_scrub_finalize_thread_timeout, &op_tp),
rep_scrub_wq(this, cct->_conf->osd_scrub_thread_timeout, &disk_tp),
- remove_wq(store, cct->_conf->osd_remove_thread_timeout, &disk_tp),
+ remove_wq(
+ store,
+ cct->_conf->osd_remove_thread_timeout,
+ cct->_conf->osd_remove_thread_suicide_timeout,
+ &disk_tp),
next_removal_seq(0),
service(this)
{
public ThreadPool::WorkQueueVal<pair<PGRef, DeletingStateRef> > {
ObjectStore *&store;
list<pair<PGRef, DeletingStateRef> > remove_queue;
- RemoveWQ(ObjectStore *&o, time_t ti, ThreadPool *tp)
+ RemoveWQ(ObjectStore *&o, time_t ti, time_t si, ThreadPool *tp)
: ThreadPool::WorkQueueVal<pair<PGRef, DeletingStateRef> >(
- "OSD::RemoveWQ", ti, 0, tp),
+ "OSD::RemoveWQ", ti, si, tp),
store(o) {}
bool _empty() {