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;
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") {