cassandra-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Jirsa <jeff.ji...@crowdstrike.com>
Subject Re: How cassandra ensures consistency when adding or removing a node?
Date Thu, 19 May 2016 03:01:42 GMT
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/locator/TokenMetadata.java#L731-L754


And 

https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/locator/TokenMetadata.java#L60-L88



Cassandra keeps a map of joining and leaving nodes, and does extra writes to the appropriate
nodes for mutations created after the streaming is calculated.



On 5/18/16, 7:33 PM, "Renjie Liu" <liurenjie2008@gmail.com> wrote:

>Hi, cassandra devs:
>I'm learning cassandra and I can understand most of the techniques used.
>But I can't understand how cassandra ensures consistency when
>adding/removing a node? It seems that when a node joins the dht ring, some
>node need to transferring data to the new node using streaming. But the
>data may still get updated while transferring, so the new node can never
>catch up with it. How cassandra handles this? Will cassandra lose data
>during this process?
>-- 
>Liu, Renjie
>Software Engineer, MVAD
Mime
View raw message