[ 
https://issues.apache.org/jira/browse/CASSANDRA-11116?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Aleksey Yeschenko updated CASSANDRA-11116:
------------------------------------------
    Fix Version/s: 2.1.14

> Gossiper#isEnabled is not thread safe
> -------------------------------------
>
>                 Key: CASSANDRA-11116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11116
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Sergio Bossa
>            Assignee: Ariel Weisberg
>            Priority: Critical
>             Fix For: 2.1.14, 2.2.6, 3.0.4, 3.4
>
>
> {{Gossiper#isEnabled()}} relies on the presence of {{scheduledGossipTask}}, 
> which is not final nor volatile. As a consequence, when such method is called 
> on a different thread, i.e. the gossip stage thread, it is sometimes detected 
> as not enabled, causing particularly obscure failures.
> This is shown by the following logs. First the gossiper is started:
> {noformat}
> 1 TRACE [Thread-29] 2016-02-03 19:21:31,232  Gossiper.java (line 1310) gossip 
> started with generation 1454527291
> {noformat}
> Then the same node misses a gossip message because the gossiper is seen as 
> disabled:
> {noformat}
> 1 TRACE [GossipStage:1] 2016-02-03 19:21:32,016  
> GossipDigestSynVerbHandler.java (line 44) Ignoring GossipDigestSynMessage 
> because gossip is disabled
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to