]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
OSD: add remove_wq suicide timeout
authorSamuel Just <sjust@redhat.com>
Wed, 6 May 2015 17:54:31 +0000 (10:54 -0700)
committerSamuel Just <sjust@redhat.com>
Wed, 6 May 2015 17:54:31 +0000 (10:54 -0700)
Signed-off-by: Samuel Just <sjust@redhat.com>
src/common/config_opts.h
src/osd/OSD.cc
src/osd/OSD.h

index c7ed2234a06bb614e1f15a2d278e2e9ad56023f5..e7c2612291875609b60f6f3738faeb057f2b8136 100644 (file)
@@ -594,6 +594,7 @@ OPTION(osd_scrub_thread_suicide_timeout, OPT_INT, 60)
 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_heartbeat_addr, OPT_ADDR, entity_addr_t())
index ac6eb0471d4d2e3d89b0df5dbd6e4bdb6094fc16..1c2b2edc04ef8372ae286a7409d1378f9fb638b3 100644 (file)
@@ -1542,7 +1542,11 @@ OSD::OSD(CephContext *cct_, ObjectStore *store_,
     cct->_conf->osd_scrub_thread_timeout,
     cct->_conf->osd_scrub_thread_suicide_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),
   service(this)
 {
   monc->set_messenger(client_messenger);
index 8b05f8a0d5fba9de0affa0467e1a38892cc5ad19..7c5f05b16c910d6813f1e6ce0a3c012aa60dc605 100644 (file)
@@ -2227,9 +2227,9 @@ protected:
     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() {