in lib/internal/Router.js [226:255]
_addConnection(socket) {
const nodeUUID = socket.nodeUUID;
if (this._partitionAwarenessAllowed && nodeUUID) {
if (nodeUUID in this._connections) {
// This can happen if the same node has several IPs
// We will keep more fresh connection alive
this._connections[nodeUUID].disconnect();
}
this._connections[nodeUUID] = socket;
}
else {
if (this._legacyConnection) {
// We already have a legacy connection
// We will keep more fresh connection alive
this._legacyConnection.disconnect();
}
this._legacyConnection = socket;
}
// Remove the endpoint from _inactiveEndpoints
const index = this._inactiveEndpoints.indexOf(socket.endpoint);
if (index > -1) {
this._inactiveEndpoints.splice(index, 1);
}
if (!this._partitionAwarenessActive &&
this._getAllConnections().length >= 2) {
this._partitionAwarenessActive = true;
}
}