Gossiper.doStatusCheck() uses isMember() suspiciously
-----------------------------------------------------

                 Key: CASSANDRA-3895
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3895
             Project: Cassandra
          Issue Type: Sub-task
            Reporter: Peter Schuller
            Assignee: Peter Schuller
            Priority: Minor


There is code for fat client removal and "old" endpoint (non-fat) removal which 
uses {{TokenMetadata.isMember()}} which only considers nodes that are joined 
(takes reads) in the cluster.

aVeryLongTime is set to 3 days.

I could very well be wrong, but the fat client identification code, the way I 
interpret it, is using isMember() to check basically whether a node is "part of 
the cluster" (in the most vague/broad sense) in order to differentiate a "real" 
node (part of the cluster) from just a fat client. But a node that is boot 
strapping is not a fat client, nor will be me a member according to isMember().

I'm also a bit scared of, even in the case of there not being a fat client 
identification, simply forgetting an endpoint. It seems that an operator 
request should be relied upon to actively forget an endpoint (i.e., forced 
remove token).


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to