From 13780d755115387591888f94ea6c58ac0db3ecc4 Mon Sep 17 00:00:00 2001 From: Loic Dachary Date: Fri, 19 Sep 2014 15:28:36 +0200 Subject: [PATCH] mon: osd find / metadata --format plain fallback ceph --format plain osd find 1 (and metadata) are not implemented and must fallback to the default (json-pretty). http://tracker.ceph.com/issues/9538 Fixes: #9538 Signed-off-by: Loic Dachary --- qa/workunits/cephtool/test.sh | 2 ++ src/mon/OSDMonitor.cc | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/qa/workunits/cephtool/test.sh b/qa/workunits/cephtool/test.sh index 65f041adc9c1..d7b7ed5a0326 100755 --- a/qa/workunits/cephtool/test.sh +++ b/qa/workunits/cephtool/test.sh @@ -601,7 +601,9 @@ function test_mon_osd() ceph osd dump | grep 'osd.0 up' ceph osd find 1 + ceph --format plain osd find 1 # falls back to json-pretty ceph osd metadata 1 | grep 'distro' + ceph --format plain osd metadata 1 | grep 'distro' # falls back to json-pretty ceph osd out 0 ceph osd dump | grep 'osd.0.*out' ceph osd in 0 diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index a85979b51df6..2a73e77f8f31 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -2394,6 +2394,8 @@ bool OSDMonitor::preprocess_command(MMonCommand *m) string format; cmd_getval(g_ceph_context, cmdmap, "format", format, string("json-pretty")); boost::scoped_ptr f(new_formatter(format)); + if (!f) + f.reset(new_formatter("json-pretty")); f->open_object_section("osd_location"); f->dump_int("osd", osd); @@ -2421,6 +2423,8 @@ bool OSDMonitor::preprocess_command(MMonCommand *m) string format; cmd_getval(g_ceph_context, cmdmap, "format", format, string("json-pretty")); boost::scoped_ptr f(new_formatter(format)); + if (!f) + f.reset(new_formatter("json-pretty")); f->open_object_section("osd_metadata"); r = dump_osd_metadata(osd, f.get(), &ss); if (r < 0) -- 2.47.3