Sam Tunnicliffe created CASSANDRA-21477:
-------------------------------------------
Summary: Defer the creation of system_cluster_metadata until CMS
initialisation
Key: CASSANDRA-21477
URL: https://issues.apache.org/jira/browse/CASSANDRA-21477
Project: Apache Cassandra
Issue Type: Improvement
Reporter: Sam Tunnicliffe
During the major upgrade to 6.0, each node independently creates a placeholder
{{KeyspaceMetadata}} instance for the new {{system_cluster_metadata}} keyspace.
The replication strategy for this placeholder is derived by selecting the
datacenters listed in {{system.peers_v2}}.
The keyspace itself is unused until all peers are running the new version and
the CMS is initialised, at which point it is re-created and the with the
correct replication which properly reflects the initial CMS membership.
Where there are inconsistencies in the peers_v2 table across the cluster, nodes
can construct these pre-init {{KeyspaceMetadata}} instances slightly
differently, which in turn causes a schema mismatch that prevents the CMS
initialisation from running without the operator excluding some subset of
nodes.
The upgrade is still able to complete, but this adds toil to the process and is
quite confusing behaviour, so we should improve it.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]