[ 
https://issues.apache.org/jira/browse/CASSANDRA-572?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12781464#action_12781464
 ] 

Jonathan Ellis commented on CASSANDRA-572:
------------------------------------------

This feels like we're solving the wrong problem.  A bootstrapping node should 
not be added to the list of nodes clients can connect to (however you want to 
manage that) until after it is done bootstrapping.  I'd rather add

if (StorageService.instance().isBootstrapMode())
    throw new UnavailableException()

to the appropriate StorageProxy methods.

> handle old gossip properly
> --------------------------
>
>                 Key: CASSANDRA-572
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-572
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.5
>            Reporter: Jaakko Laine
>             Fix For: 0.5
>
>         Attachments: 572-handle-old-gossip.patch
>
>
> (1) If a node has been moving in the ring, further bootstraps by other nodes 
> will cause errors as they are handling STATE_LEAVING gossip without having 
> such member in token metadata.
> (2) When a node bootstraps, it handles all ep states in the order they happen 
> to arrive. If the first one to arrive has moved in the past (that is, it has 
> STATE_LEAVING in its ep state), getNaturalEndpoint will throw 
> ArrayIndexOutOfBounds exception as sortedTokens.size() == 0.

-- 
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