This commit adds osd_objectstore metadata to the ceph osd metadata
command. This is done by reading the value of type from the
objectstore's metadata.
Signed-off-by: Shraddha Agrawal <shraddha.agrawal000@gmail.com>
return tp->submit([key, this] {
std::string value;
int r = store->read_meta(key, &value);
- if (r > 0) {
- value.resize(r);
- boost::algorithm::trim_right_if(value,
- [] (unsigned char c) {return isspace(c);});
- } else {
+ if (r < 0) {
value.clear();
}
return std::make_pair(r, value);
// See OSDMonitor::preprocess_boot, prevents boot without allow_crimson
// OSDMap flag
m->metadata["osd_type"] = "crimson";
- return monc->send_message(std::move(m));
+
+ auto [ret, type] = co_await store.read_meta("type");
+ if (ret == 0) {
+ m->metadata["osd_objectstore"] = type;
+ }
+ co_return co_await monc->send_message(std::move(m));
}
seastar::future<> OSD::_add_device_class()