cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Stupp (JIRA)" <>
Subject [jira] [Updated] (CASSANDRA-14109) Prevent continuous schema exchange between 3.0 and 3.11 nodes
Date Tue, 12 Dec 2017 17:30:01 GMT


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:
>             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|]
> ||OSS trunk|[branch|]
> ||OSS dtest|[branch|]
> 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

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message