You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Mansi Khara (Jira)" <ji...@apache.org> on 2026/08/28 22:02:00 UTC
[jira] [Created] (CASSANALYTICS-194) Parse / replication factor for witness-enabled keyspaces.
Mansi Khara created CASSANALYTICS-194:
-----------------------------------------
Summary: Parse <replicas>/<transient> replication factor for witness-enabled keyspaces.
Key: CASSANALYTICS-194
URL: https://issues.apache.org/jira/browse/CASSANALYTICS-194
Project: Apache Cassandra Analytics
Issue Type: Improvement
Reporter: Mansi Khara
Assignee: Mansi Khara
Adds support for the <replicas>/<transient> replication factor form, which witness replicas under mutation tracking reuse. A witness enabled keyspace declares 'datacenter1': '3/1', which means 3 replicas where 1 is a witness. Earlier CqlUtils.extractReplicationFactor() passed each value to Integer.parseInt, so a bulk read on any such keyspace failed at job setup with an uncaught NumberFormatException. We now track the transient count per datacenter and expose the full and transient counts through new accessors. getTotalReplicationFactor() still returns all replicas including witnesses, so nothing changes for untracked keyspaces. Validation matches what Cassandra does in locator.ReplicationFactor.validate. A new parseStrict factory reports a bad or empty replication map right away instead of dropping the datacenter and failing later with a confusing "DC not found in replication factor". The Kryo and CassandraRing JDK serializers are updated so the new field is not lost when it goes to Spark executors.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org