[ https://issues.apache.org/jira/browse/CASSANDRA-20205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17913466#comment-17913466 ]
Peter Machon edited comment on CASSANDRA-20205 at 1/15/25 10:17 PM: -------------------------------------------------------------------- I perform write queries using lightweight transactions. I.e. queries typically contain conditions like {code:java} update ... if version=3{code} or {code:java} insert ... if not exists{code} The query is expected to return a response row containing "[applied]"=true, in case the query succeeded and false in case the condition is not met. This field however is not present in the response. I don't know if the write happened or not. Actually, that does not matter too much from the application perspective because the missing feedback in the response causes the application to retry indefinitely either way. If that helps, I can of course check if the write operation is applied in principle but given the missing result row, I assume it ain't. Maybe, I should have mentioned, we use the use the Datastax Java driver. was (Author: JIRAUSER294752): I perform write queries using lightweight transactions. I.e. queries typically contain conditions like {code:java} update ... if version=3{code} or {code:java} insert ... if not exists{code} > Failed lightweight transaction leaves Paxos in apparently unresolvable state > ---------------------------------------------------------------------------- > > Key: CASSANDRA-20205 > URL: https://issues.apache.org/jira/browse/CASSANDRA-20205 > Project: Apache Cassandra > Issue Type: Bug > Reporter: Peter Machon > Priority: Normal > Attachments: paxos_1.csv, paxos_2.csv, paxos_3.csv > > > In three node Cassandra cluster I am consistently facing the same kind of > fatal situation on tables that are solely written using Cassandra's > lightweight transactions (CAS). > Whenever a lightweight transaction fails to reach quorum (1/2), e.g. due to > high load, any following attempt to write data within a transactions fails, > i.e. does not return {{{}"[applied]"=true{}}}. > Using {{{}select * from system.paxos where cf_id=<id of table>{}}}, I see > that there are entries, which I assume to be pending transactions. > Further, in {{/var/log/Cassandra/system.log}} I see logs like: > {quote}INFO [ScheduledTasks:1] 2025-01-12 21:46:53,005 > UncommittedTableData.java:567 - Scheduling uncommitted paxos data merge task > for {{<any other table>}} > {quote} > {quote}INFO [OptionalTasks:1] 2025-01-12 21:46:53,006 > PaxosCleanupLocalCoordinator.java:89 - Completing uncommitted paxos instances > for {{<table in stalled state>}} on ranges > {quote} > However, I can't figure how to resolve the state {{nodetool repair -full > <keyspace>}} (and variations), as well as restarting all nodes did not > resolve the issue. > _Further information:_ > * Cassandra version: 4.1.5 > * OS: Ubuntu 22.04 > * replication strategy: SimpleStrategy > * replication factor: 3 -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org