From 878dd403930a2058656a99c14b465358e134843c Mon Sep 17 00:00:00 2001 From: Samuel Just Date: Wed, 6 May 2015 10:51:28 -0700 Subject: [PATCH] OSD: add snap_trim_wq suicide timeout Signed-off-by: Samuel Just (cherry picked from commit e1073a4a577211672148a4112bd633831552d66f) --- src/common/config_opts.h | 1 + src/osd/OSD.cc | 6 +++++- src/osd/OSD.h | 4 ++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/common/config_opts.h b/src/common/config_opts.h index 5602a1beeff68..5e5f260ec29c9 100644 --- a/src/common/config_opts.h +++ b/src/common/config_opts.h @@ -568,6 +568,7 @@ OPTION(osd_op_thread_suicide_timeout, OPT_INT, 150) OPTION(osd_recovery_thread_timeout, OPT_INT, 30) OPTION(osd_recovery_thread_suicide_timeout, OPT_INT, 300) OPTION(osd_snap_trim_thread_timeout, OPT_INT, 60*60*1) +OPTION(osd_snap_trim_thread_suicide_timeout, OPT_INT, 60*60*10) OPTION(osd_snap_trim_sleep, OPT_FLOAT, 0) OPTION(osd_scrub_thread_timeout, OPT_INT, 60) OPTION(osd_scrub_finalize_thread_timeout, OPT_INT, 60*10) diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 82b356b5f8741..a77f49e3f0f4f 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -1573,7 +1573,11 @@ OSD::OSD(CephContext *cct_, ObjectStore *store_, cct->_conf->osd_recovery_thread_suicide_timeout, &recovery_tp), replay_queue_lock("OSD::replay_queue_lock"), - snap_trim_wq(this, cct->_conf->osd_snap_trim_thread_timeout, &disk_tp), + snap_trim_wq( + this, + cct->_conf->osd_snap_trim_thread_timeout, + cct->_conf->osd_snap_trim_thread_suicide_timeout, + &disk_tp), scrub_wq(this, cct->_conf->osd_scrub_thread_timeout, &disk_tp), rep_scrub_wq(this, cct->_conf->osd_scrub_thread_timeout, &disk_tp), remove_wq(store, cct->_conf->osd_remove_thread_timeout, &disk_tp), diff --git a/src/osd/OSD.h b/src/osd/OSD.h index 9bad7e2a3725d..2e111a1cd65fa 100644 --- a/src/osd/OSD.h +++ b/src/osd/OSD.h @@ -2056,8 +2056,8 @@ protected: struct SnapTrimWQ : public ThreadPool::WorkQueue { OSD *osd; - SnapTrimWQ(OSD *o, time_t ti, ThreadPool *tp) - : ThreadPool::WorkQueue("OSD::SnapTrimWQ", ti, 0, tp), osd(o) {} + SnapTrimWQ(OSD *o, time_t ti, time_t si, ThreadPool *tp) + : ThreadPool::WorkQueue("OSD::SnapTrimWQ", ti, si, tp), osd(o) {} bool _empty() { return osd->snap_trim_queue.empty(); -- 2.39.5