cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brandon Williams (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CASSANDRA-10366) Added gossip states can shadow older unseen states
Date Thu, 17 Sep 2015 19:02:04 GMT

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

Brandon Williams updated CASSANDRA-10366:
-----------------------------------------
    Attachment: 10336.txt

Patch to always lock the task when adding states.  The easiest way to reproduce the issue
is to insert a sleep in Gossiper.applyNewStates if the state is STATUS or TOKENS and then
bounce the nodes a couple of times, examining gossipinfo.

> Added gossip states can shadow older unseen states
> --------------------------------------------------
>
>                 Key: CASSANDRA-10366
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10366
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Brandon Williams
>            Assignee: Brandon Williams
>            Priority: Critical
>             Fix For: 2.0.17, 3.0.0 rc1, 2.1.10, 2.2.2
>
>         Attachments: 10336.txt
>
>
> In CASSANDRA-6135 we added cloneWithHigherVersion to ensure that if another thread added
states to gossip while we were notifying we would increase our version to ensure the existing
states wouldn't get shadowed.  This however, was not entirely perfect since it's possible
that after the clone, but before the addition another thread will insert an even newer state,
thus shadowing the others.  A common case (of this rare one) is when STATUS and TOKENS are
added a bit later in SS.setGossipTokens, where something in another thread injects a new state
(likely SEVERITY) just before the addition after the clone.



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

Mime
View raw message