Commit Graph

30203 Commits

Author SHA1 Message Date
Michael Marshall 23ec1c8a3f Refactor SAI ANN query execution to use score ordered iterators for correctness and speed
Rewrites ANN search query execution logic to more efficiently merge graph search results using
similarity score-ordered (descending) iterators to merge segments efficiently. Allows for reduced memory
consumption during queries, reduced impact of overwrites and tombstones, selective re-querying of
minimally necessary graphs, and reduced shuffling of PrimaryKey objects.

patch by Michael Marshall; reviewed by Caleb Rackliffe and Michael Semb Wever for CASSANDRA-20086
2026-03-17 15:14:13 -05:00
mck a2e55684de
Merge branch 'cassandra-4.1' into cassandra-5.0
* cassandra-4.1:
  Rate limit password changes
2026-03-16 22:04:58 +01:00
mck 1cbdef6272
Merge branch 'cassandra-4.0' into cassandra-4.1
* cassandra-4.0:
  Rate limit password changes
2026-03-16 22:04:01 +01:00
mck 17c573f800
Rate limit password changes
Introduces property cassandra.role_password_update_interval_in_ms, with default value of 5000.
Logging added when passwords on roles are changed or are rate-limited.

 patch by Mick Semb Wever; reviewed by Doug Rohrer, Jeremiah Jordan for CASSANDRA-21202
2026-03-16 22:02:41 +01:00
Francisco Guerrero b584a43597 Disallow binding an identity to a superuser when the user is a regular user
patch by Francisco Guerrero; reviewed by Mick Semb Wever for CASSANDRA-21219
2026-03-16 13:32:20 -07:00
Stefan Miklosovic c439be9390
Merge branch 'cassandra-4.1' into cassandra-5.0 2026-03-15 18:38:43 +01:00
Stefan Miklosovic 4c7367d739
Merge branch 'cassandra-4.0' into cassandra-4.1 2026-03-15 18:36:43 +01:00
Stefan Miklosovic 3ad4794aa0
Node does not send multiple inflight echos
patch by Cameron Zemek; reviewed by Stefan Miklosovic, Brandon Williams for CASSANDRA-18866
2026-03-15 18:31:14 +01:00
Joaquin Casares 2b1c8395eb
Fix ConcurrentModificationException in compaction garbagecollect
patch by Joaquin Casares; reviewed by Mick Semb Wever for CASSANDRA-21065
2026-03-13 22:32:06 +01:00
Aleksey Yeshchenko 40d52159f7 Merge branch 'cassandra-4.1' into cassandra-5.0 2026-03-13 14:58:07 +00:00
Aleksey Yeschenko 65ddddf6fb Fix ant generate-eclipse-files
patch by Aleksey Yeschenko; reviewed by Alex Petrov for CASSANDRA-21215
2026-03-13 14:53:26 +00:00
Shruti Sekaran ddfba19f9e Randomize Memtable type/allocation type and SSTable format in Simulator tests
patch by Shruti Sekaran; reviewed by Caleb Rackliffe and Francisco Guerrero for CASSANDRA-21177
2026-03-11 16:05:10 -05:00
Stefan Miklosovic b5b1c529f7
Merge branch 'cassandra-4.1' into cassandra-5.0 2026-03-11 14:20:29 +01:00
Stefan Miklosovic 0f8fd6a3fb
Merge branch 'cassandra-4.0' into cassandra-4.1 2026-03-11 14:19:27 +01:00
arvindksi274-ksolves ee635f5c45
Fix instructions in README.asc of pylib
patch by Arvind Kandpal; reviewed by Stefan Miklosovic, Michael Semb Wever for CASSANDRA-20181
2026-03-11 14:10:57 +01:00
mck d242f8e58d
Merge branch 'cassandra-4.1' into cassandra-5.0
* cassandra-4.1:
  ninja CHANGES.txt entry for CASSANDRA-21052
2026-03-10 20:10:40 +01:00
mck 0ed41f934f
Merge branch 'cassandra-4.0' into cassandra-4.1
* cassandra-4.0:
  ninja CHANGES.txt entry for CASSANDRA-21052
2026-03-10 20:06:43 +01:00
MichaelMorris 9c640a06eb
ninja CHANGES.txt entry for CASSANDRA-21052 2026-03-10 20:04:33 +01:00
Stefan Miklosovic e0ac46c5a7
Merge branch 'cassandra-4.1' into cassandra-5.0 2026-03-05 16:10:01 +01:00
Stefan Miklosovic b41fb1f71a
Merge branch 'cassandra-4.0' into cassandra-4.1 2026-03-05 16:05:39 +01:00
Stefan Miklosovic 547187a229
Obsolete expired SSTables before compaction starts
patch by Stefan Miklosovic; reviewed by Branimir Lambov for CASSANDRA-19776
2026-03-05 16:03:13 +01:00
Michael Marshall 5172a0df3b Dynamically skip sharding L0 when SAI Vector index present
This is a partial solution to IllegalStateException thrown by VectorPostings. It works by using a single shard at L0 when a vector index is present. As noted in the jira ticket, there are edge cases that may still produce errors, notably the case where there are multiple data directories.
The key trade offs here are related to the time complexity for search. Since graph search is log(n), and searching m graphs is m * log(n), we see better search performance by building bigger graphs which is essentially log(m * n). We could pre-shard, which comes at a cost of increased search time complexity.

patch by Michael Marshall,Dmitry Konstantinov; reviewed by Caleb Rackliffe,Dmitry Konstantinov,Michael Semb Wever for CASSANDRA-19661

Co-authored-by: Michael Marshall <mmarshall@apache.org>
Co-authored-by: Dmitry Konstantinov <netudima@gmail.com>
2026-02-26 12:45:05 +00:00
Stefan Miklosovic 53118ba9ef
Merge branch 'cassandra-4.1' into cassandra-5.0 2026-02-25 09:16:02 +01:00
Stefan Miklosovic f5855cebe8
Merge branch 'cassandra-4.0' into cassandra-4.1 2026-02-25 09:15:15 +01:00
Bernardo Botella Corbi 1461e754e8
Update maven-shade-plugin to version 3.6.1
patch by Bernardo Botella Corbi; reviewed by Shailaja Koppu, Stefan Miklosovic, Doug Rohrer for CASSANDRA-21176
2026-02-25 09:13:04 +01:00
Dmitry Konstantinov 8303257297 Improve diagnostics for JUnit tests which crashed or timed out on Jenkins
Add test container memory events printing to check if Linux OOM killer was active
Fix thread dump printing on junit test timeout
Process.pid() API is available since JDK9

patch by Dmitry Konstantinov; reviewed by Michael Semb Wever for CASSANDRA-21172
2026-02-18 22:53:39 +00:00
Caleb Rackliffe 32154eebcd Optionally force IndexStatusManager to use the optimized index status format
patch by Caleb Rackliffe; reviewed by Jon Meredith for CASSANDRA-21132
2026-02-17 14:00:57 -06:00
Stefan Miklosovic 60c7f05138
Cleanup of dependency-check-suppressions.xml, suppressing CVE-2025-67735
patch by Stefan Miklosovic; reviewed by Michael Semb Wever for CASSANDRA-21159
2026-02-17 11:40:01 +11:00
Jaydeepkumar Chovatia 4ada37e940 No need to evict already prepared statements, as it creates a race condition between multiple threads
patch by Jaydeepkumar Chovatia; reviewed by Alex Petrov for CASSANDRA-17401
2026-02-10 17:07:22 -08:00
jaydeepkumar1984 077b7ebe22 No need to evict already prepared statements, as it creates a race condition between multiple threads
patch by Jaydeepkumar Chovatia; reviewed by Alex Petrov for CASSANDRA-17401
2026-02-10 16:53:19 -08:00
Jaydeepkumar Chovatia 4a2bf29a34 ninja: ant check after CASSANDRA-17401 landed 2026-02-08 11:07:51 -08:00
Jaydeepkumar Chovatia d90fe76c8e No need to evict already prepared statements, as it creates a race condition between multiple threads
patch by Jaydeepkumar Chovatia; reviewed by Alex Petrov for CASSANDRA-17401
2026-02-08 10:49:16 -08:00
MichaelMorris 8b6195a975
Upgrade logback version to 1.5.18 and slf4j dependencies to 2.0.17
Dropback of CASSANDRA-20429 to cassandra-5.0

patch by Michael Morris; reviewed by Stefan Miklosovic, Brandon Williams for CASSANDRA-21137
2026-02-06 13:28:03 +11:00
Suhel0328 30a200c39f Update docs to reflect supported query operators in SAI
patch by Suhel Mohammad; reviewed by Caleb Rackliffe for CASSANDRA-19829
2026-02-05 17:57:53 -06:00
Mick Semb Wever b3ee9713f8
Implement microbench test target type
Add microbench-test target for quick test run
 Unify declaration and add assertions on target types
 Fix dirname usages for macos
 Parameter for docker_timeout
 Add more jmh class ignores (that are broken)
 Add disableResume() and better host debug to Jenkinsfile

 patch by Mick Semb Wever; reviewed by Dmitry Konstantinov for CASSANDRA-18873
2026-01-27 11:31:17 +01:00
Paulo Motta 45afd18a13 Automatically disable zero-copy streaming for legacy sstables
Legacy Cassandra 3.x sstables use an old bloom filter format that is
incompatible with zero-copy streaming in Cassandra 5.0+. This patch
automatically detects sstables with the old bloom filter format
(pre-4.0) and disables zero-copy streaming for them, allowing legacy
sstables to be loaded via sstableloader without requiring manual flags.

The fix adds a version check in CassandraOutgoingFile.computeShouldStreamEntireSSTables()
that calls descriptor.version.hasOldBfFormat() to detect legacy sstables.

patch by Paulo Motta; reviewed by Stefan Miklosovic for CASSANDRA-21092
2026-01-22 14:16:16 -05:00
Stefan Miklosovic 039e8b6649
Merge branch 'cassandra-4.1' into cassandra-5.0 2026-01-20 15:27:10 +01:00
Stefan Miklosovic 6a39d88bce
Merge branch 'cassandra-4.0' into cassandra-4.1 2026-01-20 15:19:24 +01:00
omniCoder77 5101d76b21
Fix links in README
patch by Rishabh Saraswat; reviewed by Brad Schoening, Jyothsna Konisa, Stefan Miklosovic for CASSANDRA-21110
2026-01-20 15:14:12 +01:00
Mick Semb Wever fc0ee48ea2
Merge branch 'cassandra-4.1' into cassandra-5.0
* cassandra-4.1:
  3.x cqlshlib tests broken on python2.7
2025-12-19 23:44:01 +01:00
Mick Semb Wever 99db2874ba
Merge branch 'cassandra-4.0' into cassandra-4.1
* cassandra-4.0:
  3.x cqlshlib tests broken on python2.7
2025-12-19 23:43:16 +01:00
Mick Semb Wever 3c66c74a0f
Merge branch 'cassandra-3.11' into cassandra-4.0
* cassandra-3.11:
  3.x cqlshlib tests broken on python2.7
2025-12-19 23:34:52 +01:00
Mick Semb Wever 0293e8b750
Merge branch 'cassandra-3.0' into cassandra-3.11
* cassandra-3.0:
  3.x cqlshlib tests broken on python2.7
2025-12-19 23:34:02 +01:00
Mick Semb Wever 9e04193c3f
3.x cqlshlib tests broken on python2.7
patch by Mick Semb Wever; reviewed by Brandon Williams for CASSANDRA-21079
2025-12-19 23:22:13 +01:00
Abe Ratnofsky 6fd83986e9 Merge branch 'cassandra-4.1' into cassandra-5.0
* cassandra-4.1:
  Switch lz4-java to at.yawk.lz4 version due to CVE
2025-12-18 10:59:09 -08:00
Abe Ratnofsky 2d0fda4511 Merge branch 'cassandra-4.0' into cassandra-4.1
* cassandra-4.0:
  Switch lz4-java to at.yawk.lz4 version due to CVE
2025-12-18 10:54:14 -08:00
Abe Ratnofsky ec3b425c38 Switch lz4-java to at.yawk.lz4 version due to CVE
Patch by Abe Ratnofsky; reviewed by Jyothsna Konisa, Dmitry Konstantinov for CASSANDRA-21052
2025-12-18 10:51:26 -08:00
Lukasz Antoniak 0136fc9c8f Fix CQLSSTableWriter serialization of vector of date and time
patch by Lukasz Antoniak; reviewed by Andres de la Pena, Yifan Cai for CASSANDRA-20979
2025-12-18 07:35:45 +01:00
Stefan Miklosovic f894b8440d
Merge branch 'cassandra-4.1' into cassandra-5.0 2025-12-11 11:10:58 +01:00
Stefan Miklosovic efa0ead445
Merge branch 'cassandra-4.0' into cassandra-4.1 2025-12-11 11:02:05 +01:00