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" <liurenjie2...@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

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to