]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mon/OSDMonitor: put crushtool error in log 6230/head
authorSage Weil <sage@redhat.com>
Mon, 12 Oct 2015 14:33:41 +0000 (10:33 -0400)
committerSage Weil <sage@redhat.com>
Mon, 12 Oct 2015 14:33:41 +0000 (10:33 -0400)
Putting it in *ss is useless for mkpool callers who don't return
an error string.  Log it to the mon log, too.

Signed-off-by: Sage Weil <sage@redhat.com>
src/mon/OSDMonitor.cc

index f7dca78b54018b93a748be8ac066aef28bee0202..9ebb34960f495e46d05c0db58e53ee6c015a285a 100644 (file)
@@ -4520,13 +4520,16 @@ int OSDMonitor::prepare_new_pool(string& name, uint64_t auid,
   }
   CrushWrapper newcrush;
   _get_pending_crush(newcrush);
-  CrushTester tester(newcrush, *ss);
+  ostringstream err;
+  CrushTester tester(newcrush, err);
   r = tester.test_with_crushtool(g_conf->crushtool.c_str(),
                                 osdmap.get_max_osd(),
                                 g_conf->mon_lease,
                                 crush_ruleset);
   if (r) {
-    dout(10) << " tester.test_with_crushtool returns " << r << dendl;
+    dout(10) << " tester.test_with_crushtool returns " << r
+            << ": " << err.str() << dendl;
+    *ss << "crushtool check failed with " << r << ": " << err.str();
     return r;
   }
   unsigned size, min_size;