]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: Add debug_disable_randomized_ping config for use in testing
authorDavid Zafman <dzafman@redhat.com>
Wed, 24 Jul 2019 01:10:46 +0000 (18:10 -0700)
committerDavid Zafman <dzafman@redhat.com>
Fri, 18 Oct 2019 17:49:41 +0000 (10:49 -0700)
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit f2b26d88f0a0727f0362ccd8b287f8bb3f41dc3c)

Conflicts:
src/osd/OSD.cc (trivial)
src/common/options.cc (trivial)

src/common/options.cc
src/osd/OSD.cc

index 89af39bc73870b61709b8cad43c40e32be861bf0..3a35947e52d9ff59c24b84d164d5ff6635e0784d 100644 (file)
@@ -5004,6 +5004,10 @@ std::vector<Option> get_global_options() {
     Option("debug_asok_assert_abort", Option::TYPE_BOOL, Option::LEVEL_DEV)
     .set_default(false)
     .set_description("allow commands 'assert' and 'abort' via asok for testing crash dumps etc"),
+
+    Option("debug_disable_randomized_ping", Option::TYPE_BOOL, Option::LEVEL_DEV)
+    .set_default(false)
+    .set_description("Disable heartbeat ping randomization for testing purposes"),
   });
 }
 
index ca12b25163943657cf80b6c36d133ed4af4e3eb6..f6edeb39185aab9cacbd399fb19c7702ee694268 100644 (file)
@@ -4977,7 +4977,12 @@ void OSD::heartbeat_entry()
   while (!heartbeat_stop) {
     heartbeat();
 
-    double wait = .5 + ((float)(rand() % 10)/10.0) * (float)cct->_conf->osd_heartbeat_interval;
+    double wait;
+    if (cct->_conf.get_val<bool>("debug_disable_randomized_ping")) {
+      wait = (float)cct->_conf->osd_heartbeat_interval;
+    } else {
+      wait = .5 + ((float)(rand() % 10)/10.0) * (float)cct->_conf->osd_heartbeat_interval;
+    }
     utime_t w;
     w.set_from_double(wait);
     dout(30) << "heartbeat_entry sleeping for " << wait << dendl;