otherwise the sharded_service's dtor complains if we destruct it without
stopping it first, like:
FATAL: startup failed: std::system_error (error crimson::net:3, negotiation failure)
crimson-osd: ../src/seastar/include/seastar/core/sharded.hh:523: seastar::sharded<T>::~sharded() [with Service = crimson::osd::OSD]: Assertion `_instances.empty()' failed.
Aborting on shard 0.
Signed-off-by: Kefu Chai <kchai@redhat.com>
osd.start_single(whoami, nonce,
cluster_msgr, client_msgr,
hb_front_msgr, hb_back_msgr).get();
+ auto stop_osd = seastar::defer([&] {
+ osd.stop().get();
+ });
if (config.count("mkkey")) {
make_keyring().get();
}
local_conf().get_val<uuid_d>("osd_uuid"),
local_conf().get_val<uuid_d>("fsid")).get();
}
- auto stop_osd = seastar::defer([&] {
- osd.stop().get();
- });
if (config.count("mkkey") || config.count("mkfs")) {
return EXIT_SUCCESS;
} else {