This is an automated email from the ASF dual-hosted git repository.

asf-gitbox-commits pushed a commit to branch cassandra-6.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit eb85348a21ba80e461dcfbba68d3537702715581
Merge: ab5384918c f000bddd36
Author: Caleb Rackliffe <[email protected]>
AuthorDate: Tue Aug 11 16:53:14 2026 -0500

    Merge branch 'cassandra-5.0' into cassandra-6.0
    
    * cassandra-5.0:
      Avoid rebuilding per-SSTable SAI components unless missing or corrupted

 CHANGES.txt                                        |  1 +
 .../index/sai/StorageAttachedIndexBuilder.java     |  2 -
 .../index/sai/cql/StorageAttachedIndexDDLTest.java | 66 ++++++++++++++++++++++
 .../index/sai/functional/SnapshotTest.java         |  3 +-
 4 files changed, 69 insertions(+), 3 deletions(-)

diff --cc CHANGES.txt
index c3401f2821,35a6124889..b6065bf21a
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,94 -1,18 +1,95 @@@
 -5.0.10
 +6.0-alpha3
 + * Caffeine caches in CompressionDictionaryCache and ZstdDictionaryCompressor 
should specify an executor explicitly (CASSANDRA-21557)
 + * Make cqlsh prompt to reset to no keyspace set by USE after dropping that 
keyspace (CASSANDRA-21548)
 + * Implement CMS rediscovery and recovery protocol (CASSANDRA-20476)
 +Merged from 5.0:
+  * Avoid rebuilding per-SSTable SAI components unless missing or corrupted 
(CASSANDRA-21515)
   * Propagate trickle_fsync settings to compressed SSTable writers 
(CASSANDRA-21487)
 - * Allow DatabaseDescriptor.setCompressedReadAheadBufferSizeInKb(0) to 
disable read-ahead buffer (CASSANDRA-21522)
 - * Return CorruptSSTableException if chunk metadata and file size are out of 
sync (CASSANDRA-21519)
 -Merged from 4.0:
 - * Do not make DNS lookup when querying system_views.clients for hostname 
column by removing it (CASSANDRA-21539)
 + * Allow setCompressedReadAheadBufferSizeInKb(0) to disable read-ahead buffer 
(CASSANDRA-21522)
 + * Fix ThreadLocalReadAheadBuffer#fill() to throw a CorruptBlockException if 
chunk metadata and file size are out of sync (CASSANDRA-21519)
   * Fix memtable on-heap accounting drift in BTree.update and BTreeRow.merge 
(CASSANDRA-21472)
 +Merged from 4.0:
 +  * Do not make DNS lookup when querying system_views.clients for hostname 
column by removing it (CASSANDRA-21539)
  
  
 -5.0.9
 +6.0-alpha2
 + * Apply performance optimizations for rows merging logic (CASSANDRA-21524)
 + * Fix operationMode reporting DECOMMISSION_FAILED instead of LEAVING when 
resuming a failed decommission (CASSANDRA-21493)
 + * Avoid megamorphic calls when serializing and deserializing fixed-length 
values (CASSANDRA-21536)
 + * Avoid megamorphic calls for 
Cell.timestamp/ttl/path/localDeletionTimeAsUnsignedInt methods (CASSANDRA-21526)
 + * Allow unreserved keywords as user and identity names in USER and IDENTITY 
statements (CASSANDRA-21510)
 + * Reduce allocations in DefaultQueryOptions (CASSANDRA-21467)
   * Coordinator load-shedding returns OverloadedException without setting 
streamId, misrouting query responses (CASSANDRA-21508)
 + * Reduce number of scheduledTasks on metric id release in ThreadLocalMetrics 
(CASSANDRA-21475)
 + * Cache various Enum.values() used in deserialization to avoid per-read 
array allocation (CASSANDRA-21528)
 + * Fix Accord transaction error message when altering a table 
(CASSANDRA-20580)
 + * Depend only on platform-specific Zstd JNI native libraries 
(CASSANDRA-21483)
 + * Expose immediately-executed tasks in the queries virtual table 
(CASSANDRA-21471)
 + * Avoid potential deadlock between GlobalLogFollower and GossipStage 
(CASSANDRA-21384)
 + * Add CMS membership as a field in ClusterMetadata (CASSANDRA-20736)
 + * Fix maven remote publishing of Accord artifacts (CASSANDRA-21261)
 + * Move long running TCM operations to a longer timout (CASSANDRA-21453)
 + * Offline nodetool commands should not print network options in help 
(CASSANDRA-20876)
 + * Defer creation of the system_cluster_metadata keyspace until CMS 
initialization (CASSANDRA-21477)
 + * Support direct I/O for background SSTable writes (CASSANDRA-21134)
 + * Relax assertion on partitioner instances in SinglePartitionReadCommand 
(CASSANDRA-21251)
 + * Report cancelled read command execution to coordinator as a 
RequestFailure.TIMEOUT (CASSANDRA-21468)
 + * 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)
 + * Always send TCM commit failures as Messaging failures (CASSANDRA-21457)
 + * Fix ReadCommand serializedSize() using incorrect epoch (CASSANDRA-21438)
 + * Allocation improvements in ProtocolVersion, StorageProxy and MerkleTree 
(CASSANDRA-21199)
 + * Don’t leave autocompaction disabled during bootstrap and replace 
(CASSANDRA-21236)
 + * Make nodetool abortbootstrap more robust (CASSANDRA-21235)
 + * Don't clear prepared statement cache on nodetool cms initialize 
(CASSANDRA-21234)
 + * Improve performance when deserializing cluster metadata  (CASSANDRA-21224)
 + * Minor TokenMap performance improvement (CASSANDRA-21223)
 + * Handle lost response when committing PrepareMove (CASSANDRA-21222)
 + * SEPExecutor.maybeExecuteImmediately does not always execute tasks 
immediately despite available worker capacity (CASSANDRA-21429)
 + * Safely regain ranges and delete retired command stores (CASSANDRA-21212)
 + * Reduce memory allocations in miscellaneous places along read path 
(CASSANDRA-21360)
 + * Avoid ByteBuffer wrapping in cql3.selection.Selector.InputRow to reduce 
memory allocation rate (CASSANDRA-21362)
 + * Reduce cost to calculate BTreeRow.minDeletionTime (CASSANDRA-21414)
 + * Implement custom CassandraThread to keep direct references to frequently 
used thread local objects (CASSANDRA-21020)
 + * Avoid megamorphic call overhead at RandomAccessReader#current 
(CASSANDRA-21399)
 + * Enable async GC logging for JDK versions which support it to avoid 
potential hiccups caused by GC log file I/O blocking (CASSANDRA-21372)
 + * Add rowsMutatedPerWriteHistogram metric to track rows mutated per write 
request (CASSANDRA-21320)
 + * Add TotalRowsRead and TotalRowsMutated counters to TableMetrics for 
accurate per-table row throughput tracking (CASSANDRA-21321)
 + * Move exception handling of SPI startup checks when iterating over them 
(CASSANDRA-21409)
 + * Avoid type lookup in SerializationHeader#getType if schema and SSTable are 
aligned (CASSANDRA-21402)
 + * Replace LongAdder in metric-like logic with ThreadLocalCounter 
(CASSANDRA-21400)
 + * BTreeRow.hasLiveData: avoid Cell iteration if there are no cell tombstones 
(CASSANDRA-21363)
 + * Reduce memory allocations in row merge logic (CASSANDRA-21359)
 + * Restore option to avoid hint transfer during decommission (CASSANDRA-21341)
 + * Add an offline cluster metadata tool (CASSANDRA-19151)
 + * Accord: Tail Latency Improvements (CASSANDRA-21361)
 + * Artificial Latency Injection (CASSANDRA-17024)
 + * Accord: Clean Shutdown/Restart, Rebootstrap, et al (CASSANDRA-21355)
 + * Reduce memory allocations in SelectStatement.getQuery (CASSANDRA-21351)
 + * Avoid allocation by getFunctions in SelectStatement.authorize 
(CASSANDRA-21347)
 + * Avoid unit conversion in DatabaseDescriptor.getMaxValueSize() for every 
deserializing Cell (CASSANDRA-21295)
 + * Fix single token batch atomicity with Accord/non-Accord batches by using 
the batch log (CASSANDRA-20588)
 + * Avoid CompactionOptions parsing for every read by 
WithoutPurgeableTombstones (CASSANDRA-21294)
 + * Ensure schema created before 2.1 without tableId in folder name can be 
loaded in SnapshotLoader (CASSANDRA-21246)
 + * Differentiate between legitimate cases where the first entry is the same 
as the last entry and empty bounds in SSTableCursorWriter#addIndexBlock() 
(CASSANDRA-21255)
 + * Introduce minimum_threshold for data resurrection startup check 
(CASSANDRA-21293)
 + * Synchronously publish changes to local gossip state following metadata 
updates (CASSANDRA-21239)
 + * Change default for cassandra.set_sep_thread_name to false to reduce CPU 
usage (CASSANDRA-21089)
 + * Avoid permission checks for masked columns when the table doesn't have any 
(CASSANDRA-21299)
 + * Reduce allocations and array copies due to buffer resizing in 
LocalDataResponse during row serialization (CASSANDRA-21285)
 + * Implement a guardrail for client driver versions (CASSANDRA-21146)
 + * Enable IAuthenticator to declare supported and alterable role options 
(CASSANDRA-20834)
 + * Avoid capturing lambda allocation in 
UnfilteredSerializer.deserializeRowBody (CASSANDRA-21289)
 + * Avoid Cell iterator allocation for alive rows in MetricsRecording 
transformation of ReadCommand (CASSANDRA-21288)
 + * Reuse a single TrackedDataInputPlus instance per UnfilteredSerializer 
(CASSANDRA-21296)
 + * In-tree docs are included in binary artifacts (tarball, deb, rpm) as html 
and man pages (CASSANDRA-17260)
 + * Add tooling to repair system peers and peers_v2 if inconsistent with 
cluster metadata (CASSANDRA-21187)
 + * Fix a removed TTLed row re-appearance in a materialized view after a 
cursor compaction (CASSANDRA-21152)
 + * Rework ZSTD dictionary compression logic to create a trainer per training 
(CASSANDRA-21209)
 +Merged from 5.0:
   * SAI Component Checksum Validation Should be Segment-Aware (CASSANDRA-21516)
   * Support Python 3.12 and 3.13 in cqlsh (CASSANDRA-20997)
 - * Fix AssertionError in hasReplicaWithOngoingRepair when 
parallel_repair_count > 1 (CASSANDRA-21426)
 + * Make synchronization on VectorMemoryIndex inserts more granular 
(CASSANDRA-21160)
   * putShortVolatile is not volatile in InMemoryTrie (CASSANDRA-21353)
   * Fix RequestFailureReason serializer and nits in a few others 
(CASSANDRA-21437)
   * Remove golang dependency in gen-doc and replace with python implementation 
(CASSANDRA-21432)


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to