Cluster: ignore slot config changes if we are importing it.

This commit is contained in:
antirez 2014-02-10 18:04:43 +01:00
parent 6fc53e16ad
commit a3755ae9ee

View File

@ -1112,8 +1112,10 @@ void clusterUpdateSlotsConfigWith(clusterNode *sender, uint64_t senderConfigEpoc
if (bitmapTestBit(slots,j)) {
/* We rebind the slot to the new node claiming it if:
* 1) The slot was unassigned.
* 2) The new node claims it with a greater configEpoch. */
if (server.cluster->slots[j] == sender) continue;
* 2) The new node claims it with a greater configEpoch.
* 3) We are not currently importing the slot. */
if (server.cluster->slots[j] == sender ||
server.cluster->importing_slots_from[j]) continue;
if (server.cluster->slots[j] == NULL ||
server.cluster->slots[j]->configEpoch < senderConfigEpoch)
{