}
-bool OSD::_share_map_incoming(entity_name_t name, Connection *con, epoch_t epoch, Session* session)
+bool OSD::_share_map_incoming(
+ entity_name_t name,
+ Connection *con,
+ epoch_t epoch,
+ OSDMapRef osdmap,
+ Session* session)
{
bool shared = false;
dout(20) << "_share_map_incoming "
service.reply_op_error(op, -EBLACKLISTED);
return;
}
+
// share our map with sender, if they're old
- _share_map_incoming(m->get_source(), m->get_connection().get(), m->get_map_epoch(),
- static_cast<Session *>(m->get_connection()->get_priv()));
+ _share_map_incoming(
+ m->get_source(),
+ m->get_connection().get(),
+ m->get_map_epoch(),
+ osdmap,
+ static_cast<Session *>(m->get_connection()->get_priv()));
if (op->rmw_flags == 0) {
int r = init_op_flags(op);
return;
// share our map with sender, if they're old
- _share_map_incoming(m->get_source(), m->get_connection().get(), m->map_epoch,
- static_cast<Session*>(m->get_connection()->get_priv()));
+ _share_map_incoming(
+ m->get_source(), m->get_connection().get(), m->map_epoch,
+ osdmap,
+ static_cast<Session*>(m->get_connection()->get_priv()));
// make sure we have the pg
const spg_t pgid = m->pgid;
void forget_peer_epoch(int p, epoch_t e);
bool _share_map_incoming(entity_name_t name, Connection *con, epoch_t epoch,
+ OSDMapRef osdmap,
Session *session = 0);
void _share_map_outgoing(int peer, Connection *con,
OSDMapRef map = OSDMapRef());