Jakub Zytka created CASSANDRA-18591:
---------------------------------------
Summary: assertion failure when reading after writes and column
drop executed in parallel
Key: CASSANDRA-18591
URL: https://issues.apache.org/jira/browse/CASSANDRA-18591
Project: Cassandra
Issue Type: Bug
Reporter: Jakub Zytka
This is another face of the problem reported in CASSANDRA-18589, but this
problem may happen regardless of whether the dropped column is complex.
When writing data in parallel with dropping a column, the subsequent reads may
fail with AssertionError: until the affected sstable is compacted.
ERROR [node1_isolatedExecutor:3] node1 2023-06-12 15:45:28,058 Exception in
thread Thread[node1_ReadStage-2,10,SharedPool]
java.lang.RuntimeException: java.lang.AssertionError: Caught an error while
trying to process the command: SELECT * FROM ks.tab LIMIT 500
0 ALLOW FILTERING
at org.apache.cassandra.net.InboundSink.accept(InboundSink.java:108)
at org.apache.cassandra.net.InboundSink.accept(InboundSink.java:45)
at
org.apache.cassandra.net.InboundMessageHandler$ProcessMessage.run(InboundMessageHandler.java:430)
at
org.apache.cassandra.concurrent.ExecutionFailure$1.run(ExecutionFailure.java:133)
at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:143)
at
io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.lang.AssertionError: Caught an error while trying to process
the command: SELECT * FROM ks.tab LIMIT 5000 ALLOW FILTERING
at
org.apache.cassandra.db.ReadCommandVerbHandler.doVerb(ReadCommandVerbHandler.java:83)
at
org.apache.cassandra.net.InboundSink.lambda$new$0(InboundSink.java:78)
at
org.apache.cassandra.net.InboundSink$Filtered.accept(InboundSink.java:64)
at
org.apache.cassandra.net.InboundSink$Filtered.accept(InboundSink.java:50)
at org.apache.cassandra.net.InboundSink.accept(InboundSink.java:97)
... 6 common frames omitted
Caused by: java.lang.AssertionError: v
at
org.apache.cassandra.db.rows.UnfilteredSerializer.lambda$serializeRowBody$0(UnfilteredSerializer.java:255)
at org.apache.cassandra.utils.btree.BTree.applyValue(BTree.java:1762)
at org.apache.cassandra.utils.btree.BTree.applyLeaf(BTree.java:1770)
at org.apache.cassandra.utils.btree.BTree.apply(BTree.java:1785)
at org.apache.cassandra.utils.btree.BTree.apply(BTree.java:1811)
at org.apache.cassandra.db.rows.BTreeRow.apply(BTreeRow.java:203)
at
org.apache.cassandra.db.rows.UnfilteredSerializer.serializeRowBody(UnfilteredSerializer.java:246)
at
org.apache.cassandra.db.rows.UnfilteredSerializer.serialize(UnfilteredSerializer.java:212)
at
org.apache.cassandra.db.rows.UnfilteredSerializer.serialize(UnfilteredSerializer.java:141)
at
org.apache.cassandra.db.rows.UnfilteredSerializer.serialize(UnfilteredSerializer.java:129)
at
org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer.serialize(UnfilteredRowIteratorSerializer.java:153)
at
org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer.serialize(UnfilteredRowIteratorSerializer.java:102)
at
org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer.serialize(UnfilteredRowIteratorSerializer.java:87)
at
org.apache.cassandra.db.partitions.UnfilteredPartitionIterators$Serializer.serialize(UnfilteredPartitionIterators.java:308)
at
org.apache.cassandra.db.ReadResponse$LocalDataResponse.build(ReadResponse.java:201)
at
org.apache.cassandra.db.ReadResponse$LocalDataResponse.<init>(ReadResponse.java:186)
at
org.apache.cassandra.db.ReadResponse.createDataResponse(ReadResponse.java:48)
at
org.apache.cassandra.db.ReadCommand.createResponse(ReadCommand.java:338)
at
org.apache.cassandra.db.ReadCommandVerbHandler.doVerb(ReadCommandVerbHandler.java:64)
... 10 common frames omitted
It is likely that the intended fix of CASSANDRA-18589 will make this issue go
away.
For now, I'm reporting two different tickets to not mix two discussions
together, should they happen.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]