Details
-
Enhancement
-
Resolution: Unresolved
-
Minor
-
None
-
7.0.0.Alpha5
-
None
Description
Say we have a distributed cache [A, B] with numSegments = 1 and numOwners = 2. The initial topology is T: currentCH = {0: A B}, pendingCH = null
C joins, and A starts a rebalance. The topology is now T + 1: currentCH = {0: A B}, pendingCH = {0: A C}
C now leaves, A updates the consistent hashes to remove it with a new topology _T + 2: currentCH = {0: A B}, pendingCH = {0: A}
A doesn't need to receive any data, so the rebalance ends and the pending CH is installed as the current CH in topology T + 3: currentCH = {0: A}, pendingCH = null
This algorithm is relatively easy to follow and implement, but it does result in reduced availability of the cache data. It would be better if topology T + 2 could re-add B as an owner in the pending CH.
Attachments
Issue Links
- is duplicated by
-
ISPN-7749 A node leaving during rebalance causes extra segment transfers
- Resolved