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

[jira] [Commented] (CASSANDRA-9554) Avoid digest mismatch storm on upgade to 3.0

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

Sylvain Lebresne commented on CASSANDRA-9554:
---------------------------------------------

For info, I started [a branch|https://github.com/pcmanus/cassandra/commits/9554] for that but won't have time to finish it in the coming weeks. It's compiling and should contain the gist of the issue but it's entirely untested. So attaching the branch so that if someone else wants to finish this, he has something to start with.

> Avoid digest mismatch storm on upgade to 3.0
> --------------------------------------------
>
>                 Key: CASSANDRA-9554
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9554
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Aleksey Yeschenko
>            Assignee: Tyler Hobbs
>             Fix For: 3.0.0 rc1
>
>
> CASSANDRA-8099, in {{UnfilteredRowIterators.digest()}}:
> {code}
>         // TODO: we're not computing digest the same way that old nodes. This
>         // means we'll have digest mismatches during upgrade. We should pass the messaging version of
>         // the node this is for (which might mean computing the digest last, and won't work
>         // for schema (where we announce the version through gossip to everyone))
> {code}
> In a mixed 2.1(2.2) - 3.0 clusters, we need to calculate both digest at the same time and keep both results, and send the appropriate one, depending on receiving nodes' messaging versions. Do that until {{MessagingService.allNodesAtLeast30()}} is true (this is not unprecedented).



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