From: Loic Dachary Date: Sun, 9 Feb 2014 20:40:08 +0000 (+0100) Subject: crush: display item name in CrushWrapper::dump_rule() X-Git-Tag: v0.78~184^2~8 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=a7e9a7b648ee157345db042ef3087a9b2115fc15;p=ceph.git crush: display item name in CrushWrapper::dump_rule() When an item name is available used it instead of displaying the number. Signed-off-by: Loic Dachary --- diff --git a/src/crush/CrushWrapper.cc b/src/crush/CrushWrapper.cc index 3df0147e10ca..1c5d54a83ffe 100644 --- a/src/crush/CrushWrapper.cc +++ b/src/crush/CrushWrapper.cc @@ -1200,7 +1200,14 @@ void CrushWrapper::dump_rule(int ruleset, Formatter *f) const break; case CRUSH_RULE_TAKE: f->dump_string("op", "take"); - f->dump_int("item", get_rule_arg1(ruleset, j)); + { + int item = get_rule_arg1(ruleset, j); + const char *name = get_item_name(item); + if (name == NULL) + f->dump_int("item", item); + else + f->dump_string("item", name); + } break; case CRUSH_RULE_EMIT: f->dump_string("op", "emit"); diff --git a/src/test/crush/TestCrushWrapper.cc b/src/test/crush/TestCrushWrapper.cc index 55c7e86831f0..74509dcd2654 100644 --- a/src/test/crush/TestCrushWrapper.cc +++ b/src/test/crush/TestCrushWrapper.cc @@ -533,6 +533,8 @@ TEST(CrushWrapper, dump_rules) { f->flush(ss); delete f; EXPECT_EQ(0, ss.str().find("0NAME")); + EXPECT_NE(string::npos, + ss.str().find("takedefault")); } delete c;