]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
common/config: let diff show non-build defaults
authorSage Weil <sage@redhat.com>
Tue, 6 Aug 2019 15:53:06 +0000 (10:53 -0500)
committerSage Weil <sage@redhat.com>
Tue, 6 Aug 2019 17:50:36 +0000 (12:50 -0500)
Notably, this includes things from set_val_default(), which may be set
at runtime.

Signed-off-by: Sage Weil <sage@redhat.com>
src/common/config.cc
src/test/common/test_context.cc

index 21072b995901f8ae2ea81ec7e013f4a1d80daf48..82d6a37efb204ef333aa2f6f706c4875d6432355 100644 (file)
@@ -1485,9 +1485,7 @@ void md_config_t::diff(
   string name) const
 {
   values.for_each([this, f, &values] (auto& name, auto& configs) {
-    if (configs.size() == 1 &&
-       configs.begin()->first == CONF_DEFAULT) {
-      // we only have a default value; exclude from diff
+    if (configs.empty()) {
       return;
     }
     f->open_object_section(std::string{name}.c_str());
index 1d1e22e2558d97218fe90ab3a12b48835276bb3e..9aec891144555932ddd96b97d4cf496a53b45356 100644 (file)
@@ -56,7 +56,7 @@ TEST(CephContext, do_command)
     bufferlist out;
     cct->do_command("config diff get", cmdmap, "xml", &out);
     string s(out.c_str(), out.length());
-    EXPECT_EQ("<config_diff_get><diff><key><default></default><override>" + value + "</override><final>value</final></key></diff></config_diff_get>", s);
+    EXPECT_EQ("<config_diff_get><diff><key><default></default><override>" + value + "</override><final>value</final></key><rbd_default_features><default>61</default><final>61</final></rbd_default_features></diff></config_diff_get>", s);
   }
   cct->put();
 }