[
https://issues.apache.org/jira/browse/CASSANDRA-18282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18072681#comment-18072681
]
Pedro Gordo commented on CASSANDRA-18282:
-----------------------------------------
The root cause of this was already fixed on trunk/5.0 by CASSANDRA-17810. When
a replica-side read is aborted mid-iteration (via \{{CheckForAbort}} from
CASSANDRA-7392), the iterator is silently truncated by calling \{{stop()}}. If
this happens inside a range tombstone span, the iterator ends up with an open
RT marker and no close marker, triggering the \{{IllegalStateException}} in
\{{RTBoundValidator}}.
CASSANDRA-17810 fixes this by throwing \{{QueryCancelledException}} instead of
silently stopping, so callers discard the partial response rather than
serializing a broken iterator. It also adds the partition key and open marker
deletion time to the error message.
I'm backporting CASSANDRA-17810 to 4.0 and 4.1, plus change "RT" to "Range
Tombstone" in error messages across all branches.
> Exception for RTBoundValidator
> ------------------------------
>
> Key: CASSANDRA-18282
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18282
> Project: Apache Cassandra
> Issue Type: Bug
> Components: Observability/Logging
> Reporter: Brad Schoening
> Assignee: Pedro Gordo
> Priority: Normal
> Fix For: 4.0.x, 4.1.x, 6.x
>
> Attachments: 18282-logging.patch
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> From the exception RTBoundValidator its not clear what 'RT' refers to.
> 1.) Exception subject
> Instead of: 'has an illegal RT bounds sequence'
> change to: 'has an illegal Range Tombstone bounds sequence'
> 2.) Why doesn't the (key: %s omdt: [%s]) display in the exception message?
> Example:
> 2023-01-31 18:26:27,480 [ERROR] [ReadStage-9] cluster_id=5
> ip_address=127.1.1.1 AbstractLocalAwareExecutorService.java:166 - Uncaught
> exception on thread Thread[ReadStage-9,5,main]
> java.lang.IllegalStateException: MERGED UnfilteredRowIterator for
> rdhprod.instrument_alias_map has an illegal RT bounds sequence: unexpected
> end bound or boundary Marker INCL_END_BOUND(T,
> TBG)@1612002648782856/1612002648
> at
> org.apache.cassandra.db.transform.RTBoundValidator$RowsTransformation.ise(RTBoundValidator.java:120)
> ~[apache-cassandra-3.11.11.jar:3.11.11]
> at
> org.apache.cassandra.db.transform.RTBoundValidator$RowsTransformation.applyToMarker(RTBoundValidator.java:87)
> ~[apache-cassandra-3.11.11.jar:3.11.11]
> at org.apache.cassandra.db.transform.BaseRows.hasNext(BaseRows.java:148)
> ~[apache-cassandra-3.11.11.jar:3.11.11]
> at org.apache.cassandra.db.transform.BaseRows.hasNext(BaseRows.java:133)
> ~[apache-cassandra-3.11.11.jar:3.11.11]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]