On 9/26/12 4:30 PM, Dan Berindei wrote:
When we start the rebalance, we always keep the previous owner. So the
joiner becomes a backup owner, but the previous owner is still the
primary owner until the rebalance is done (which would guarantee the
joiner has the data).
We can't do the write skew check if the previous owner left, but then
it was the only owner so we don't have any other copy of the data in
the cluster in order to perform the write skew check.
so, if I understand right, it
happens in this way (simplified)?
node1: primary owner ==> key1, key2
node2: joins and the new consistent hash says that key 2 should be in node2
...
event: rebalance_start
node1: primary owner ==> key1, key2
node2: backup owner ==> key2
...
event: ch_update
node1: primary owner ==> key1
node2: primary owner ==> key2