I think Cassandra gives us control as what we want to do: a) If we want to replace a dead node then we should specify "-Dcassandra.replace_address=old_node_ipaddress" b) If we are adding new nodes (no replacement) then do not specify above option and tokens would get assigned randomly.
I can think of a scenario in which your dead node has tons of data and you are hopeful on its recovery so you do not want to replace this dead node always. Momentarily you might just add a new node to meet the the capacity until dead not is fully recovered. -jaydeep On Thu, Dec 4, 2014 at 11:30 PM, Omri Bahumi <om...@everything.me> wrote: > I guess Cassandra is aware that it has some replicas not meeting the > replication factor. Wouldn't it be nice if a bootstrapping node would > get those? > Could make things much simpler in the Ops view. > > What do you think? > > On Fri, Dec 5, 2014 at 8:31 AM, Jaydeep Chovatia > <chovatia.jayd...@gmail.com> wrote: > > as per my knowledge if you have externally NOT specified > > "-Dcassandra.replace_address=old_node_ipaddress" then new tokens > (randomly) > > would get assigned to bootstrapping node instead of tokens of dead node. > > > > -jaydeep > > > > On Thu, Dec 4, 2014 at 6:50 AM, Omri Bahumi <om...@everything.me> wrote: > >> > >> Hi, > >> > >> I was wondering, how would auto_bootstrap behave in this scenario: > >> > >> 1. I had a cluster with 3 nodes (RF=2) > >> 2. One node died, I deleted it with "nodetool removenode" (+ force) > >> 3. A new node launched with "auto_bootstrap: true" > >> > >> The question is: will the "right" vnodes go to the new node as if it > >> was bootstrapped with "-Dcassandra.replace_address=old_node_ipaddress" > >> ? > >> > >> Thanks, > >> Omri. > > > > >