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

Yifan Cai commented on CASSANDRA-16146:
---------------------------------------

PR (to 3.0): [https://github.com/apache/cassandra/pull/760]

CI: 
[https://app.circleci.com/pipelines/github/yifan-c/cassandra/108/workflows/d4fc0b93-111e-4cbc-bd2c-c68e1a72fe09]

The patch simply prevents calling stopGossip and startGossip when not in the 
normal mode. 

I will prepare the patch to the other branches (3.11 and trunk) once this one 
looks good. 

cc: [~bdeggleston]

> Node state incorrectly set to NORMAL after nodetool disablegossip and 
> enablegossip during bootstrap
> ---------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-16146
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-16146
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Cluster/Gossip
>            Reporter: Yifan Cai
>            Assignee: Yifan Cai
>            Priority: Normal
>             Fix For: 3.0.x, 3.11.x, 4.0-beta3
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> At high level, {{StorageService#setGossipTokens}} set the gossip state to 
> {{NORMAL}} blindly. Therefore, re-enabling gossip (stop and start gossip) 
> overrides the actual gossip state.
>   
> It could happen in the below scenario.
> # Bootstrap failed. The gossip state remains in {{BOOT}} / {{JOINING}} and 
> code execution exits StorageService#initServer.
> # Operator runs nodetool to stop and re-start gossip. The gossip state gets 
> flipped to {{NORMAL}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to