cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brandon Williams (Jira)" <>
Subject [jira] [Updated] (CASSANDRA-16856) Prevent broken concurrent schema pulls
Date Wed, 18 Aug 2021 12:39:00 GMT


Brandon Williams updated CASSANDRA-16856:
    Reviewers: Brandon Williams, Brandon Williams  (was: Brandon Williams)
               Brandon Williams, Brandon Williams
       Status: Review In Progress  (was: Patch Available)

> Prevent broken concurrent schema pulls
> --------------------------------------
>                 Key: CASSANDRA-16856
>                 URL:
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Cluster/Gossip
>            Reporter: Berenguer Blasi
>            Assignee: Berenguer Blasi
>            Priority: Normal
>             Fix For: 4.1, 3.11.x, 4.0.x
> There's a race condition around pulling schema changes, that can occur in case the schema
changes push/propagation mechanism is not immediately effective (e.g. because of network delay,
or because of the pulling node being down, etc.).
> If schema changes happen on node 1, these changes do not reach node 2 immediately through
the SCHEMA.PUSH mechanism, and are first recognized during gossiping, the corresponding SCHEMA.PULL
request from node 2 can catch the node 1 schema in the middle of it being modified by another
schema change request. This can easily lead to problems (e.g. if a new table is being added,
and the node 2 request reads the changes that need to be applied to  system_schema.tables,
but not the ones that need to be applied to system_schema.columns).
> This PR addresses that by synchronizing the SCHEMA.PULL "RPC call" executed in node 1
by a request from node 2 with the method for applying schema changes in node 1.

This message was sent by Atlassian Jira

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

View raw message