mirror of
https://github.com/ceph/ceph
synced 2024-12-14 23:46:28 +00:00
osd: requeue osdmaps on heartbeat connections for cluster connection
If we receive an OSDMap on the cluster connection, requeue it for the cluster messenger, and process it there where we normally do. This avoids any concerns about locking and ordering rules. Signed-off-by: Sage Weil <sage@inktank.com>
This commit is contained in:
parent
a7059eb3f3
commit
76705ace2e
@ -3375,6 +3375,14 @@ bool OSD::heartbeat_dispatch(Message *m)
|
||||
handle_osd_ping((MOSDPing*)m);
|
||||
break;
|
||||
|
||||
case CEPH_MSG_OSD_MAP:
|
||||
{
|
||||
Connection *self = cluster_messenger->get_loopback_connection();
|
||||
cluster_messenger->send_message(m, self);
|
||||
self->put();
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user