Commit Graph

31883 Commits

Author SHA1 Message Date
Stefan Miklosovic e7fa71efaa
Implement a guardrail for client driver versions
patch by Stefan Miklosovic; reviewed by Andy Tolbert, Bohdan Siryk for CASSANDRA-21146
2026-04-13 10:37:05 +02:00
Joel Shepherd 281c1dc92c
Enable IAuthenticator to declare supported and alterable role options
With negotiated authentication (CEP-50), nodes may be configured with multiple authenticators. Prior to this change,
a number of areas in the code assumed that there was a single configured authenticator and contained logic that
switched depending on the authenticator type. This logic won't work when multiple authenticators can be configured.
This change eliminates most calls to DataDescriptor.getAuthenticator(), by enabling individual authenticators to
declare the role attributes they support, requiring callers to specify the type of authenticator they're looking
for, and directly returning whether the node can enforce authn or not rather than inferring it by the presence of
an authenticator.

Testing done: Unit tests for auth and config packages; d-tests for auth-related functionality (e.g. ColumnMasks).

patch by Joel Shepherd; reviewed by Stefan Miklosovic, Andy Tolbert for CASSANDRA-20834
2026-04-12 22:15:49 +02:00
Dmitry Konstantinov ba2af93a99 ninja trunk patch for CASSANDRA-21289, forgot to commit a change after rebase 2026-04-12 13:55:42 +01:00
Dmitry Konstantinov b09bc8b8b0 Avoid capturing lambda allocation in UnfilteredSerializer.deserializeRowBody
The same idea was applied previously in UnfilteredSerializer#serializeRowBody. A state is passed into a consumer function using the existing helper object.

patch by Dmitry Konstantinov; reviewed by Caleb Rackliffe, Francisco Guerrero for CASSANDRA-21289
2026-04-12 12:54:21 +01:00
Dmitry Konstantinov 9bcdf5d746 Avoid Cell iterator for alive rows in MetricsRecording transformation of ReadCommand
patch by Dmitry Konstantinov; reviewed by Francisco Guerrero for CASSANDRA-21288
2026-04-12 09:42:31 +01:00
Francisco Guerrero 536504969c Reuse a single TrackedDataInputPlus instance per UnfilteredSerializer
patch by Francisco Guerrero; reviewed Dmitry Konstantinov, Caleb Rackliffe for CASSANDRA-21296
2026-04-11 10:46:59 -07:00
Karol Baryła 8ec80e7a21 drivers.adoc: Replace Rust CQL with Scylla Rust Driver
Rust CQL did not have any commits in 9 years. It doesn't even support
protocol V4, and most of the features that a user could expect from the
driver - like load balancing or pagination. No reasonable app would use
it in production.

This commit replaces it with Scylla Rust Driver on the page with
recommended drivers. Scylla Rust Driver is actively developed and
feature-rich. Even though it is primarily developed for Scylla, we do
always make sure it is also compatible with Cassandra and tested with
it.
2026-04-10 17:49:31 -07:00
Nikita Eshkeev 515cb0e1c2 Fix paths to images
Signed-off-by: Nikita Eshkeev <kastolom@gmail.com>
2026-04-10 17:48:41 -07:00
Patrick McFadin bac42412e3 Clarify keyspace-level index name uniqueness in warning admonition
The original second sentence implied per-table scope, which contradicted
the first sentence. Replaced with explicit keyspace-scope wording and
removed the redundant vector/non-vector qualifier.
2026-04-10 17:46:27 -07:00
Lorina Poland 4410419d14 add index naming note to clarify
Author: Lorina Poland (polandll); Reviewed by Mick Semb Wever (mck) - no ticket
2026-04-10 17:46:27 -07:00
Patrick McFadin 7e74f4bdb8 Clarify keyspace-level index name uniqueness in warning admonition
The original second sentence implied per-table scope, which contradicted
the first sentence. Replaced with explicit keyspace-scope wording and
removed the redundant vector/non-vector qualifier.
2026-04-10 17:45:56 -07:00
Lorina Poland 3728253fff add index naming note to clarify
Author: Lorina Poland (polandll); Reviewed by Mick Semb Wever (mck) - no ticket
2026-04-10 17:45:56 -07:00
Lorina Poland 05186d7869 Add trie memtable docs-storage engine, create and alter table; revised per blambov's comments.
Authored by Lorina Poland (polandll); Reviewed by Branimir Lambov (blambov) for CASSANDRA-18236
2026-04-10 16:52:06 -07:00
Nicholas fa1afe8891 Update data-modeling_logical.adoc
Fix images in data-modeling_logical.adoc
2026-04-10 16:49:24 -07:00
Shanzita 73e195c4ab CASSANDRA-13342: Document failure reason codes in native protocol v5 spec 2026-04-10 15:24:04 -07:00
Ayantika19 f79e8b3a0d CASSANDRA-18868 Added documentation of granting permissions for all tables in a keyspace 2026-04-10 15:23:01 -07:00
Amritpal Singh 4c0a2e59ad Update data-modeling_schema.adoc
Remember that for set and list collections, you need to specify the element type inside the angle brackets (<>). For map, you need to specify both the key type and value type separated by a comma.
2026-04-10 15:21:43 -07:00
Amritpal Singh 1f9ac53b75 Update data-modeling_schema.adoc
The SQL statement you provided for creating a table in Cassandra has a small syntax issue with the comment. In Cassandra, comments should be enclosed in single quotes (') and preceded by the keyword WITH. Additionally, the comment text should be properly formatted
2026-04-10 15:20:21 -07:00
misterderpie 2c99e53f2b Fix formatting on Storage Engine Documentation
Documentation/Storage Engine - Markdown Render Misformat Fix

patch by Matthias Doepmann
2026-04-10 15:19:30 -07:00
arvindksi274-ksolves 0742f15f10 CASSANDRA-21291: Fix duplicate section and minor formatting typos in compaction overview 2026-04-10 15:07:38 -07:00
arvindksi274-ksolves a4045c3fdd CASSANDRA-21291: Fix duplicate section and minor formatting typos in compaction overview 2026-04-10 15:07:17 -07:00
0xbad0c0d3 aec3d90ce4 Fix typo in SAI index documentation 2026-04-10 15:06:22 -07:00
Chen-Yuanmeng f402b5a895 Correct typo in CASSANDRA-14092.txt 2026-04-10 15:05:47 -07:00
PJ Fanning 4f59364417 Update link to Apache Archives for earlier Cassandra versions 2026-04-10 15:05:09 -07:00
Brad Schoening a9eaa0bea0 Update wording and fix a few typos 2026-04-10 14:05:36 -07:00
mck 50bf9b6aae
Generation of in-tree html and manpages documentation
patch by Mick Semb Wever; reviewed by Anthony Grasso for CASSANDRA-17260
2026-04-10 19:36:50 +02:00
Josh McNeil 5e2468bf59 Fix broken linkage in Material View docs
The `ALLOW FILTERING` link was missing a closing square bracket.
2026-04-10 10:34:17 -07:00
finalchild 195d6c76d8 Remove duplicate paragraph in storage_engine.adoc 2026-04-10 09:08:46 -07:00
Shanzita 18b4c186fe CASSANDRA-21218: Fix typos in documentation 2026-04-10 08:48:11 -07:00
Stefan Miklosovic 84b282b43a
Merge branch 'cassandra-5.0' into trunk 2026-04-10 11:47:03 +02:00
Stefan Miklosovic 1722270946
Prepare debian changelog for 5.0.8 2026-04-10 11:35:51 +02:00
Stefan Miklosovic ab80b9e7c8
Merge branch 'cassandra-5.0' into trunk 2026-04-10 10:46:13 +02:00
Stefan Miklosovic a03745abd8
Merge branch 'cassandra-4.1' into cassandra-5.0 2026-04-10 10:35:46 +02:00
John Lu 20d19c6627
Harden data resurrection startup check with atomic heartbeat file write with fallback
patch by John Lu; reviewed by Abe Ratnofsky, Chris Lohfink, Stefan Miklosovic for CASSANDRA-21290
2026-04-10 10:14:49 +02:00
Minal Kyada c484fc511a Add tooling to repair system peers tables if inconsistent with cluster metadata
Patch by Minal Kyada; reviewed by Alex Petrov and Sam Tunnicliffe for
CASSANDRA-21187
2026-04-08 20:09:50 +01:00
Paulo Motta 73063437b6 Merge branch 'cassandra-5.0' into trunk 2026-04-08 11:17:44 -04:00
Paulo Motta 9500eb129b Backport Automated Repair Inside Cassandra (CEP-37)
Includes bug fixes and features:
- Improved observability in AutoRepair (CASSANDRA-20581)
- Stop repair scheduler if two major versions detected (CASSANDRA-20048)
- Safeguard Full repair against disk protection (CASSANDRA-20045)
- Stop AutoRepair monitoring thread upon shutdown (CASSANDRA-20623)
- Fix race condition in auto-repair scheduler (CASSANDRA-20265)
- Minimum repair task duration setting (CASSANDRA-20160)
- Preview_repaired auto-repair type (CASSANDRA-20046)
- Gate auto-repair behind cassandra.autorepair.enable JVM property
- Add cassandra.autorepair.check_min_version to gate minimum version enforcement
- Prevent auto-repair from running if any node is below 5.0.7
- Make system_distributed auto-repair schema conditional on feature being enabled
- Add user-friendly errors for disabled auto-repair and schema incompatibility

patch by Paulo Motta; reviewed by Andy Tolbert, Jaydeepkumar Chovatia for CASSANDRA-21138

Co-Authored-By: Andy Tolbert <andy_tolbert@apple.com>
Co-Authored-By: Chris Lohfink <clohfink@netflix.com>
Co-Authored-By: Francisco Guerrero <frankgh@apache.org>
Co-Authored-By: Himanshu Jindal <himanshj@amazon.com>
Co-Authored-By: Jaydeepkumar Chovatia <jchovati@uber.com>
Co-Authored-By: Kristijonas Zalys <kzalys@uber.com>
Co-Authored-By: jaydeepkumar1984 <chovatia.jaydeep@gmail.com>
2026-04-08 10:53:41 -04:00
mck d2bdb2ffa8
Merge branch 'cassandra-5.0' into trunk
* cassandra-5.0:
  Autogenerate the doc antora.yml
2026-04-08 15:24:07 +02:00
mck 0807210572
Autogenerate the doc antora.yml
patch by Mick Semb Wever; reviewed by Anthony Grasso for CASSANDRA-17375
2026-04-08 15:19:40 +02:00
mck 300c216aa6
ninja trunk patch for CASSANDRA-21202
this diff was supposed to be included in 5f9de8ca13

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-04-08 15:09:58 +02:00
Stefan Miklosovic 11c858b99f
revert changelog for CASSANDRA-21007 from 6.0-alpha2 as it was delivered in 6.0-alpha1 2026-04-07 15:43:26 +02:00
Mick Semb Wever 88e3fcfe8b
Increment version to 6.0-alpha2 2026-04-04 00:15:39 +02:00
Stefan Miklosovic 0679fea4cb
Merge branch 'cassandra-5.0' into trunk
This merge contains the forgotten entry in 6.0-alpha1 list of changes in CHANGES.txt for CASSANDRA-21007
2026-04-02 17:01:13 +02:00
jkonisa 03dc5a061c
Update cassandra-stress to support TLS 1.3 by default by auto-negotiation
This is a backport of 9d89b47c68 to cassandra-5.0 branch.

patch by Rishabh Saraswat; reviewed by Jyothsna Konisa, Brad Schoening for CASSANDRA-21007
2026-04-02 16:52:53 +02:00
Dmitry Konstantinov 1a9ab95c20 Fix a removed TTLed row re-appearance in a materialized view after a cursor compaction
Add an implementation of isExpired to ReusableLivenessInfo, before the change the method implementation was interited from an interface and always returned false, so livenessInfo().supersedes(...) did not work properly.

patch by Dmitry Konstantinov; reviewed by Branimir Lambov, Nitsan Wakart for CASSANDRA-21152
2026-04-01 18:58:02 +01:00
Sunil Ramchandra Pawar 157e8808f9 Add range delete support to AST-based fuzz tests
patch by Sunil Ramchandra Pawar; reviewed by Caleb Rackliffe and David Capwell for CASSANDRA-20949
2026-04-01 11:45:54 -05:00
Caleb Rackliffe 2184d5cc6b Merge branch 'cassandra-5.0' into trunk
* cassandra-5.0:
  ninja-fix: remove SSTable format and disk access mode randomization
2026-03-27 12:07:39 -05:00
ssekaran 32d541557c ninja-fix: remove SSTable format and disk access mode randomization
patch by Shruti Sekaran; reviewed by Caleb Rackliffe and Francisco Guerrero
2026-03-27 11:50:01 -05:00
Stefan Miklosovic bf755d0ade
Merge branch 'cassandra-5.0' into trunk 2026-03-24 10:37:20 +01:00
Matt Byrd 989901e4e0
Ensure schema created before 2.1 without tableId in folder name can be loaded in SnapshotLoader
Best effort attempt to get tableId from CFS, fallback to null which, still allows snapshot to be loaded
End result is that nodetool clearsnapshot and listsnapshot function for such snapshots on restart.

patch by Matt Byrd; reviewed by Stefan Miklosovic, Brandon Williams and Francisco Guerrero for CASSANDRA-21173
2026-03-24 10:36:30 +01:00