update_stats();
}},
asok{seastar::make_lw_shared<crimson::admin::AdminSocket>()},
- osdmap_gate("OSD::osdmap_gate"),
log_client(cluster_msgr.get(), LogClient::NO_FLAGS),
clog(log_client.create_channel())
{
superblock = std::move(sb);
return get_map(superblock.current_epoch);
}).then([this](cached_map_t&& map) {
- osdmap_gate.got_map(map->get_epoch());
pg_shard_manager.update_map(map);
+ pg_shard_manager.got_map(map->get_epoch());
osdmap = std::move(map);
bind_epoch = osdmap->get_epoch();
return load_pgs();
*this, pg.second, pg.second->get_osdmap_epoch(), epoch,
PeeringCtx{}, false).second;
}).then([epoch, this] {
- osdmap_gate.got_map(epoch);
+ pg_shard_manager.got_map(epoch);
return seastar::make_ready_future();
});
}
crimson::net::ConnectionRef conn,
Ref<MOSDPGUpdateLogMissingReply> m);
public:
- OSD_OSDMapGate osdmap_gate;
-
ShardServices &get_shard_services() {
return pg_shard_manager.get_shard_services();
}
OSD_OSDMapGate::OSDMapBlocker::BlockingEvent;
return opref.template with_blocking_event<OSDMapBlockingEvent>(
[this, &opref](auto &&trigger) {
- return osdmap_gate.wait_for_map(
+ return pg_shard_manager.wait_for_map(
std::move(trigger),
opref.get_epoch(),
&shard_services
}
FORWARD_TO_CORE(send_pg_created)
-};
+ FORWARD(got_map, got_map, core_state.osdmap_gate)
+ FORWARD(wait_for_map, wait_for_map, core_state.osdmap_gate)
+}
}
crimson::os::FuturizedStore &store)
: whoami(whoami),
osdmap_service(osdmap_service),
+ osdmap_gate("CoreState::osdmap_gate"),
cluster_msgr(cluster_msgr),
public_msgr(public_msgr),
monc(monc),
void update_map(OSDMapService::cached_map_t new_osdmap) {
osdmap = std::move(new_osdmap);
}
+ OSD_OSDMapGate osdmap_gate;
crimson::net::Messenger &cluster_msgr;
crimson::net::Messenger &public_msgr;