]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
OSD: add snap_trim_wq suicide timeout
authorSamuel Just <sjust@redhat.com>
Wed, 6 May 2015 17:51:28 +0000 (10:51 -0700)
committerNathan Cutler <ncutler@suse.com>
Sat, 5 Sep 2015 12:32:51 +0000 (14:32 +0200)
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit e1073a4a577211672148a4112bd633831552d66f)

src/common/config_opts.h
src/osd/OSD.cc
src/osd/OSD.h

index de01d636bc05f82788de83bd398d43f1010b5e0b..ca849991f2bddc9bb6290402ca2ea10cba45d812 100644 (file)
@@ -479,6 +479,7 @@ OPTION(osd_op_thread_timeout, OPT_INT, 15)
 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)
index 3b74e4cdc30d89fc15a57d37f57db5f87834d877..97ed2911a819e6f24bcef1e0c7ab21620d9fc23b 100644 (file)
@@ -965,7 +965,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),
   scrub_finalize_wq(cct->_conf->osd_scrub_finalize_thread_timeout, &op_tp),
   rep_scrub_wq(this, cct->_conf->osd_scrub_thread_timeout, &disk_tp),
index 0ec34771664059d1e3245f5df4e2c20a170bd18a..3ebf6549023033e69924e8306952203267be5052 100644 (file)
@@ -1711,8 +1711,8 @@ protected:
   
   struct SnapTrimWQ : public ThreadPool::WorkQueue<PG> {
     OSD *osd;
-    SnapTrimWQ(OSD *o, time_t ti, ThreadPool *tp)
-      : ThreadPool::WorkQueue<PG>("OSD::SnapTrimWQ", ti, 0, tp), osd(o) {}
+    SnapTrimWQ(OSD *o, time_t ti, time_t si, ThreadPool *tp)
+      : ThreadPool::WorkQueue<PG>("OSD::SnapTrimWQ", ti, si, tp), osd(o) {}
 
     bool _empty() {
       return osd->snap_trim_queue.empty();