You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jaakko Laine (JIRA)" <ji...@apache.org> on 2010/01/16 08:24:54 UTC

[jira] Issue Comment Edited: (CASSANDRA-644) Provide way to remove nodes from gossip entirely

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

Jaakko Laine edited comment on CASSANDRA-644 at 1/16/10 7:23 AM:
-----------------------------------------------------------------

patch attached:

- removeToken now removes node from gossip
- fat clients (nodes without token) are removed from gossip after 1 hour of inactivity
- added justRemovedEndPoints to gossip to prevent removed nodes from reappearing immediately. Removed nodes are kept here for RING_DELAY period, during which time new joins from them are ignored. It takes a while for remove token gossip to propagate to all nodes. During this time some nodes will continue to gossip about the just-now-being-removed-node, while others have already removed it.
- fixed a bug related to removeToken command which allowed node's own token being removed.


      was (Author: jaakko):
    patch attached:

- removeToken now removes node from gossip
- fat clients (nodes without token) are removed from gossip after 1 hour of inactivity
- added justRemovedEndPoints to gossip to prevent removed nodes from reappearing immediately. Removed nodes are kept here for RING_DELAY period, during which time new joins from them are ignored. It takes a while for remove token gossip to propagate to all nodes. During this time some nodes will continue to gossip about the just-now-being-removed-node, while others have already removed it.

  
> Provide way to remove nodes from gossip entirely
> ------------------------------------------------
>
>                 Key: CASSANDRA-644
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-644
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Tools
>    Affects Versions: 0.5
>            Reporter: Jonathan Ellis
>            Assignee: Jaakko Laine
>            Priority: Minor
>             Fix For: 0.9
>
>         Attachments: 644.patch
>
>
> As reported in CASSANDRA-634, "Now that we're gossiping about dead nodes as well, gossip digest continues to grow without boundary when nodes come and go. This information will never disappear as it will be propagated to new nodes no matter how old and obsolete it is. To counter this, we need some mechanism to (1) either remove dead node from endpointstateinfo or (2) at some point stop to gossip about it, or both."
> This is also seen when using "fat clients" that participate in the gossip ring; if a client leaves and does not come back it stays in the gossip forever.  (This can be confusing if the client does start up again, connecting to a _different_ cluster, but the old one notices it is back and starts gossiping to it again!)
> I would prefer to leave management of these things explicit; 3 days is long enough that the fat client problem in particular needs another solution, and if it needs another solution then that can become the only solution. :)
> So I would be in favor of removeToken clearing out gossip entries, and also adding a command to remove an endpoint from the gossip ring that does not have a token associated with it (like fat clients).  A command to ask "what are all the known gossip hosts" would also be useful, since nodeprobe ring only includes nodes w/ tokens.

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