Merge branch 'cassandra-6.0' into trunk

* cassandra-6.0:
  Report cancelled read command execution to coordinator as a RequestFailure.TIMEOUT
This commit is contained in:
Dmitry Konstantinov 2026-06-20 15:03:03 +01:00
commit 961f813dac
2 changed files with 4 additions and 1 deletions

View File

@ -3,6 +3,7 @@
* Allow nodetool garbagecollect to take a user defined list of SSTables (CASSANDRA-16767)
* Add a guardrail for misprepared statements (CASSANDRA-21139)
Merged from 6.0:
* Report cancelled read command execution to coordinator as a RequestFailure.TIMEOUT (CASSANDRA-21468)
* Add policy for selecting CMS host when submitting commit request (CASSANDRA-21456)
* Fix TCM log catchup from peer with snapshots and gaps in the log sequence (CASSANDRA-21455)
* Speed up nodetool doc generation by producing all command help in a single jvm (CASSANDRA-21444)

View File

@ -2739,6 +2739,7 @@ public class StorageProxy implements StorageProxyMBean
protected void runMayThrow()
{
boolean cancelled = false;
try
{
MessageParams.reset();
@ -2765,6 +2766,7 @@ public class StorageProxy implements StorageProxyMBean
{
logger.debug("Query cancelled (timeout)", e);
response = null;
cancelled = true;
Preconditions.checkState(!command.isCompleted(), "Local read marked as completed despite being aborted by timeout to table %s", command.metadata());
}
@ -2776,7 +2778,7 @@ public class StorageProxy implements StorageProxyMBean
{
// We track latency based on request processing time
MessagingService.instance().metrics.recordSelfDroppedMessage(verb, MonotonicClock.Global.preciseTime.now() - requestTime.startedAtNanos(), NANOSECONDS);
handler.onFailure(FBUtilities.getBroadcastAddressAndPort(), RequestFailure.UNKNOWN);
handler.onFailure(FBUtilities.getBroadcastAddressAndPort(), cancelled ? RequestFailure.TIMEOUT : RequestFailure.UNKNOWN);
}
if (!readRejected)