Fixes: http://tracker.ceph.com/issues/24408
Signed-off-by: Sage Weil <sage@redhat.com>
done
ceph config show osd.0 | grep debug_xio | grep 'override mon'
ceph tell osd.0 config unset debug_xio
+ceph tell osd.0 config unset debug_xio
ceph config rm osd.0 debug_xio
while ceph config show osd.0 | grep debug_xio | grep mon
f->dump_string("error", "syntax error: 'config unset <var>'");
} else {
int r = _conf->rm_val(var.c_str());
- if (r < 0) {
+ if (r < 0 && r != -ENOENT) {
f->dump_stream("error") << "error unsetting '" << var << "': "
<< cpp_strerror(r);
} else {
if (r == 0) {
cct->_conf->apply_changes(nullptr);
}
+ if (r == -ENOENT) {
+ r = 0; // idempotent
+ }
} else if (prefix == "exit") {
// We will send response before executing
ss << "Exiting...";
if (r == 0) {
cct->_conf->apply_changes(nullptr);
}
+ if (r == -ENOENT) {
+ r = 0; // make command idempotent
+ }
osd_lock.Lock();
}
else if (prefix == "cluster_log") {