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

Jonathan Ellis commented on CASSANDRA-150:
------------------------------------------

I see, so to make the less-strong check be enough when seeds.size <= live node 
count we reason that:

either all the live nodes are seeds, in which case non-seeds that come online 
will introduce themselves to a member of the ring by definition, and become 
known in turn,

or there is at least one non-seed node in the list, in which case eventually 
someone will gossip to it, and then do a gossip to a random seed from the 
existing clause in the if statement.

> It might indeed be better to check only if liveEndpoints.size < seeds.size

yes, let's go with this.  better to do a little extra gossiping in corner cases 
than risk indefinite partitions.

> multiple seeds (only when seed count = node count?) can cause cluster 
> partition
> -------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-150
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-150
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jonathan Ellis
>            Priority: Minor
>         Attachments: 150.patch
>
>
> happens fairly frequently on my test cluster of 5 nodes.  (i normally restart 
> all nodes at once when updating the code.  haven't tested w/ restarting one 
> machine at a time.)

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