Hi Cassandra Community,

I’ve been investigating Cassandra Paxos v2 (as implemented in 
CEP-14<https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-14%3A+Paxos+Improvements>)
 which improves the performance of lightweight transaction (LWT). But I’ve got 
a question about setting the commit consistency level for LWT after upgrading 
Paxos.

In 
cqlsh<https://docs.datastax.com/en/cql-oss/3.3/cql/cql_reference/cqlshSerialConsistency.html>,
 gocql<https://github.com/gocql/gocql/blob/master/session.go#L1247> and Python 
driver<https://docs.datastax.com/en/developer/python-driver/3.29/api/cassandra/query/#cassandra.query.Statement.serial_consistency_level>,
 there are two settings for consistency levels: normal Consistency Level and 
Serial Consistency Level. As mentioned in the cqlsh 
documentation<https://docs.datastax.com/en/cql-oss/3.3/cql/cql_reference/cqlshSerialConsistency.html>,
 Serial Consistency Level is only used for LWT and can only be set to either 
SERIAL or LOCAL_SERIAL. However, the Steps for Upgrading 
Paxos<https://github.com/apache/cassandra/blob/trunk/NEWS.txt#L532> and 
CEP-14<https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-14%3A+Paxos+Improvements>
 mention that ANY or LOCAL_QUOROM can be used as the commit consistency level 
for LWT after upgrading Paxos to v2. Therefore, I have a question about how to 
correctly set the commit consistency level to ANY or LOCAL_QUORUM for LWT. 
Namely, which consistency level should I set, the normal Consistency Level or 
Serial Consistency Level?

Any help would be really appreciated.

Thanks,
Justin

Reply via email to