But I don't understand how the replica count is getting restored here. The node 
that invoked removenode only owns partial ranges.

-----Original Message-----
From: Brandon Williams [mailto:dri...@gmail.com] 
Sent: Wednesday, February 22, 2017 10:49 AM
To: dev@cassandra.apache.org
Subject: Re: RemoveNode Behavior Question

Every topology operation tries to respect/restore the RF except for assassinate.

On Wed, Feb 22, 2017 at 12:45 PM, Anubhav Kale < 
anubhav.k...@microsoft.com.invalid> wrote:

> Hello,
>
> Recently, I started noticing an interesting pattern. When I execute 
> "removenode", a subset of the nodes that now own the tokens result it 
> in a CPU spike / disk activity, and sometimes SSTables on those nodes shoot 
> up.
>
> After looking through the code, it appears to me that below function 
> forces data to be streamed from some of the new nodes to the node from 
> where "removenode" is kicked in. Is my understanding correct ?
>
> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithu
> b.com%2Fapache%2Fcassandra%2Fblob%2Fd384e781d6f7c028dbe88cfe9dd3e9&dat
> a=02%7C01%7CAnubhav.Kale%40microsoft.com%7Cf22f2e33447f46c5e82a08d45b5
> 38008%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636233861574178675&
> sdata=NGkgls2RTfWTM7MBJ4MuKdxd7pRZiSRGcWDVUmXwG5Q%3D&reserved=0
> 66e72cd046/src/java/org/apache/cassandra/service/StorageService.java#L
> 2548 <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%
> 2Fgithub.com%2Fapache%2Fcassandra%2Fblob%2Fd384e781d6f7c028dbe88cfe9dd
> 3 e966e72cd046%2Fsrc%2Fjava%2Forg%2Fapache%2Fcassandra%
> 2Fservice%2FStorageService.java%23L2548&data=02%7C01%
> 7CAnubhav.Kale%40microsoft.com%7C173daa48fcaf4ca6498d08d43982318c%
> 7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636196678720784947&sdata=
> JZ9zWh%2FtJJ%2FbhXXkT41yQhANKaUSBHfP53WraY2vL8M%3D&reserved=0>
>
> Our nodes don't run very hot, but it appears this streaming causes 
> them to have issues. If I understand the code correctly, the node 
> that's initiated removenode may still not get all the data for moved 
> over ranges. So, what is the rationale behind trying to build a "partial 
> replica" ?
>
> Maybe, I am not following this correctly so hoping someone can explain.
>
> Thanks !
>
>

Reply via email to