This was working for setting values, but failing to call
the config observers, so some values didn't take effect.
Fixes: http://tracker.ceph.com/issues/20803
Signed-off-by: John Spray <john.spray@redhat.com>
std::string val;
cmd_getval(cct, cmdmap, "value", val);
r = cct->_conf->set_val(key, val, true, &ss);
+ if (r == 0) {
+ cct->_conf->apply_changes(nullptr);
+ }
} else if (prefix == "exit") {
// We will send response before executing
ss << "Exiting...";
std::string val;
cmd_getval(cct, cmdmap, "value", val);
r = g_conf->set_val(key, val, true, &ss);
+ if (r == 0) {
+ g_conf->apply_changes(nullptr);
+ }
rs = ss.str();
goto out;
} else if (prefix == "status" ||
cmd_getval(cct, cmdmap, "value", val);
osd_lock.Unlock();
r = cct->_conf->set_val(key, val, true, &ss);
+ if (r == 0) {
+ cct->_conf->apply_changes(nullptr);
+ }
osd_lock.Lock();
}
else if (prefix == "cluster_log") {