[
https://issues.apache.org/jira/browse/CASSANDRA-19578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Chris Lohfink updated CASSANDRA-19578:
--------------------------------------
Description:
As part of CASSANDRA-17819 a check for empty schema changes was added to the
updateSchema. This only looks at the _logical_ schema difference of the
schemas, but the changes made to the system_schema keyspace are the ones that
actually are involved in the digest.
If two nodes issue the same CREATE statement the difference from the
keyspace.diff would be empty but the timestamps on the mutations would be
different, leading to a pseudo schema disagreement which will never resolve
until resetlocalschema or nodes being bounced.
Only impacts 4.1
test and fix :
https://github.com/clohfink/cassandra/commit/ba915f839089006ac6d08494ef19dc010bcd6411
was:
As part of CASSANDRA-17819 a check for empty schema changes was added to the
updateSchema. This only looks at the _logical_ schema difference of the
schemas, but the changes made to the system_schema keyspace are the ones that
actually are involved in the digest.
If two nodes issue the same CREATE statement the difference from the
keyspace.diff would be empty but the timestamps on the mutations would be
different, leading to a pseudo schema disagreement which will never resolve
until resetlocalschema or nodes being bounced.
test and fix :
https://github.com/clohfink/cassandra/commit/ba915f839089006ac6d08494ef19dc010bcd6411
> Concurrent equivalent schema updates lead to unresolved disagreement
> --------------------------------------------------------------------
>
> Key: CASSANDRA-19578
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19578
> Project: Cassandra
> Issue Type: Bug
> Components: Cluster/Schema
> Reporter: Chris Lohfink
> Priority: Normal
>
> As part of CASSANDRA-17819 a check for empty schema changes was added to the
> updateSchema. This only looks at the _logical_ schema difference of the
> schemas, but the changes made to the system_schema keyspace are the ones that
> actually are involved in the digest.
> If two nodes issue the same CREATE statement the difference from the
> keyspace.diff would be empty but the timestamps on the mutations would be
> different, leading to a pseudo schema disagreement which will never resolve
> until resetlocalschema or nodes being bounced.
> Only impacts 4.1
> test and fix :
> https://github.com/clohfink/cassandra/commit/ba915f839089006ac6d08494ef19dc010bcd6411
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]