When specifying replication options using transient replication, the user specifies the total number of replicas and how many are transient for the replication factor, i.e.:
1. Make sure the token map and routing use the full replicas and not all replicas. 2. Add an integration test asserting that no transient replica are ever contacted
Transient Replication is an experimental feature being introduced in Cassandra 4.0.
When specifying replication options using transient replication, the user specifies the total number of replicas and how many are transient for the replication factor, i.e.:
create keyspace tr with replication = {'class': 'SimpleStrategy', 'replication_factor': '3/1'};
In this case the replication factor is defined as 3 with 1 being transient.
I think the driver currently assumes that this value is an int, as that has always been the case. Because of this, the parsing must not be working:
cqlsh> create keyspace tr with replication = {'class': 'SimpleStrategy', 'replication_factor': '3/1'}; cqlsh> describe keyspace tr; 'NoneType' object has no attribute 'export_for_schema'
encountered in: CASSANDRA-14872