[ 
https://issues.apache.org/jira/browse/CASSANDRA-483?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Ellis updated CASSANDRA-483:
-------------------------------------

    Attachment:     (was: 
0002-refactor-bootstrap-to-only-concern-itself-with-bootstr.txt)

> clean up bootstrap code, 2
> --------------------------
>
>                 Key: CASSANDRA-483
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-483
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Tools
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>             Fix For: 0.5
>
>
> existing bootstrap code overengineers things a bit by allowing multiple nodes 
> to bootstrap into the same span of the ring simultaneously.  but, this 
> doesn't handle the case where one of them doesn't complete the bootstrap.  
> one possible response would be to transfer that node's span to one of the 
> other new nodes, but then you're no longer evenly dividing the ring.  
> starting over with recomputed tokens for the remaining nodes is significantly 
> complicated.
> in short I think the right solution is to handle each node independently.   
> if only one node bootstraps into a ring segment at a time, nothing changes.  
> but if another node bootstraps in before the first finishes, we just say 
> "okay" and send them each the data they would get _if it were the only node 
> bootstrapping_.  So if one fails, we don't have to do any extra work.  If all 
> succeed, the penalty is we transferred too much to some nodes but that will 
> be taken care of by the existing cleanup compaction code.
> (this does mean that we can't automatically pick tokens while a bootstrap is 
> in progress, though, or it will pick the same one for both, which is 
> undesireable.  but saying "if you want to bootstrap multiple nodes into the 
> same ring span at once, you have to manually specify the tokens" seems 
> reasonable to me.  (especially since that was already the case under the old 
> system, if you didn't want just random tokens.)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to