You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Ariel Weisberg (JIRA)" <ji...@apache.org> on 2016/02/04 19:43:39 UTC
[jira] [Assigned] (CASSANDRA-11116) Gossiper#isEnabled is not
thread safe
[ https://issues.apache.org/jira/browse/CASSANDRA-11116?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ariel Weisberg reassigned CASSANDRA-11116:
------------------------------------------
Assignee: Ariel Weisberg
> Gossiper#isEnabled is not thread safe
> -------------------------------------
>
> Key: CASSANDRA-11116
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11116
> Project: Cassandra
> Issue Type: Bug
> Reporter: Sergio Bossa
> Assignee: Ariel Weisberg
> Priority: Critical
>
> {{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)