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

Robert Stupp updated CASSANDRA-14109:
-------------------------------------
    Status: Patch Available  (was: Open)

> Prevent continuous schema exchange between 3.0 and 3.11 nodes
> -------------------------------------------------------------
>
>                 Key: CASSANDRA-14109
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14109
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Coordination, Distributed Metadata
>            Reporter: Robert Stupp
>            Assignee: Robert Stupp
>            Priority: Blocker
>             Fix For: 3.11.2
>
>
> Continuous schema migrations can happen during an upgrade from 3.0.x to 3.x 
> even with versions having the patches for CASSANDRA-13441 and CASSANDRA-13559.
> The root cause is the {{cdc}} column, which is included in schema version 
> calculation in {{RowIterators.digest()}} via 
> {{SchemaKeyspace.calculateSchemaDigest()}}.
> It is possible to make the schema-version calculation between 3.0 and 3.11 
> compatible. The idea here is: 3.11 accepts both 3.0 compatible and 3.11 
> "native" schema versions. As long as there is one 3.0 node in the cluster, 
> 3.11 announces a 3.0 compatible schema version (without the {{cdc}} column). 
> When there are no (more) 3.0 nodes in the cluster, announce the "real" 3.11 
> schema version (including the {{cdc}} column). "Announce" means announcing 
> via Gossip and storing in {{system.local}}.
> The change itself is against 3.11 only. A couple of log messages have been 
> improved and some code regarding schema version checks has been moved into 
> the {{Schema}} class. Those "side changes" are carried to trunk. Because of 
> that, the 3.11 and trunk branches are different. The "real" change is in the 
> 3.11 branch.
> {{NEWS.txt}} for 3.11(only) contains upgrade notes.
> ||OSS 
> 3.11|[branch|https://github.com/apache/cassandra/compare/cassandra-3.11...snazy:schema-migration-upgrade-bug-3.11?expand=1]
> ||OSS 
> trunk|[branch|https://github.com/apache/cassandra/compare/trunk...snazy:schema-migration-upgrade-bug-trunk?expand=1]
> ||OSS 
> dtest|[branch|https://github.com/riptano/cassandra-dtest/compare/master...snazy:schema-migration-upgrade-bug?expand=1]
> We've verified the functionality of the patch by usual CI tests and extensive 
> tests using the new upgrade dtest.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to