]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/OSD.cc: use set_val / apply_changes API
authorColin Patrick McCabe <cmccabe@alumni.cmu.edu>
Fri, 9 Sep 2011 16:28:18 +0000 (09:28 -0700)
committerColin Patrick McCabe <cmccabe@alumni.cmu.edu>
Wed, 14 Sep 2011 17:46:46 +0000 (10:46 -0700)
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
src/osd/OSD.cc

index 17fa3bd7603a176e3099d3d8856b0b4140c030f6..3fb5584a880e2ae381de701322ee4042b716ebff 100644 (file)
@@ -792,10 +792,11 @@ void OSD::create_logger()
 
 int OSD::shutdown()
 {
-  g_conf->debug_osd = 100;
-  g_conf->debug_journal = 100;
-  g_conf->debug_filestore = 100;
-  g_conf->debug_ms = 100;
+  g_ceph_context->_conf->set_val("debug_osd", "100");
+  g_ceph_context->_conf->set_val("debug_journal", "100");
+  g_ceph_context->_conf->set_val("debug_filestore", "100");
+  g_ceph_context->_conf->set_val("debug_ms", "100");
+  g_ceph_context->_conf->apply_changes(NULL);
   
   derr << "OSD::shutdown" << dendl;
 
@@ -2333,13 +2334,20 @@ void OSD::handle_command(MMonCommand *m)
       fout.close();
     }
     else if (m->cmd.size() == 3 && m->cmd[1] == "kick_recovery_wq") {
-      g_conf->osd_recovery_delay_start = atoi(m->cmd[2].c_str());
-      clog.info() << "kicking recovery queue. set osd_recovery_delay_start "
-                   << "to " << g_conf->osd_recovery_delay_start << "\n";
-
-      defer_recovery_until = ceph_clock_now(g_ceph_context);
-      defer_recovery_until += g_conf->osd_recovery_delay_start;
-      recovery_wq.kick();
+      int r = g_conf->set_val("osd_recovery_delay_start", m->cmd[2].c_str());
+      if (r != 0) {
+       clog.info() << "kick_recovery_wq: error setting "
+         << "osd_recovery_delay_start to '" << m->cmd[2] << "': error "
+         << r << "\n";
+      }
+      else {
+       g_conf->apply_changes(NULL);
+       clog.info() << "kicking recovery queue. set osd_recovery_delay_start "
+                     << "to " << g_conf->osd_recovery_delay_start << "\n";
+       defer_recovery_until = ceph_clock_now(g_ceph_context);
+       defer_recovery_until += g_conf->osd_recovery_delay_start;
+       recovery_wq.kick();
+      }
     }
   }
   else if (m->cmd[0] == "cpu_profiler") {