Commit Graph

19741 Commits

Author SHA1 Message Date
Bernardo Botella Corbi 5cbf993d96
CEP-42 - Add Constraints Framework
patch by Bernardo Botella; reviewed by Yifan Cai, Stefan Miklosovic, Josh McKenzie, Maxwell Guo, Dmitry Konstantinov, Sam Tunnicliffe for CASSANDRA-19947
2025-01-31 10:49:11 +01:00
David Capwell 10c0481f46 Forward port randomized testing improvements from cep-15-accord to trunk
patch by David Capwell; reviewed by Caleb Rackliffe for CASSANDRA-20253
2025-01-28 12:46:50 -08:00
Caleb Rackliffe 8e5bdc6d4b Merge branch 'cassandra-5.0' into trunk
* cassandra-5.0:
  Correct the default behavior of compareTo() when comparing WIDE and STATIC PrimaryKeys
2025-01-27 15:22:58 -06:00
Dmitry Konstantinov d7258ac8f3
Add table metric PurgeableTombstoneScannedHistogram and a tracing event for scanned purgeable tombstones
patch by Dmitry Konstantinov; reviewed by Chris Lohfink, Stefan Miklosovic for CASSANDRA-20132
2025-01-27 22:10:20 +01:00
Caleb Rackliffe 225eb2feeb Correct the default behavior of compareTo() when comparing WIDE and STATIC PrimaryKeys
patch by Caleb Rackliffe; reviewed by David Capwell for CASSANDRA-20238
2025-01-27 15:05:44 -06:00
Marcus Eriksson 634a5985d3 Make sure we can parse the expanded CQL before writing it to the log or sending it to replicas
Patch by marcuse; reviewed by Sam Tunnicliffe and Stefan Miklosovic for CASSANDRA-20218
2025-01-27 10:47:15 +01:00
Stefan Miklosovic cf2bca244e
Merge branch 'cassandra-5.0' into trunk 2025-01-27 08:34:13 +01:00
Stefan Miklosovic 0d420a0df4
Merge branch 'cassandra-4.1' into cassandra-5.0 2025-01-27 08:26:53 +01:00
Stefan Miklosovic 85647ceadb
Merge branch 'cassandra-4.0' into cassandra-4.1 2025-01-27 08:23:35 +01:00
Stefan Miklosovic 6207a305ba
Tighten up permissions in dc authorizers
patch by Stefan Miklosovic; reviewed by Francisco Guerrero for CASSANDRA-20225
2025-01-26 17:52:09 +01:00
David Capwell 186b5e4dbe Merge branch 'cassandra-5.0' into trunk 2025-01-24 15:02:11 -08:00
David Capwell 975c309eee Merge branch 'cassandra-4.1' into cassandra-5.0 2025-01-24 15:00:52 -08:00
David Capwell 935effb7e0 Merge branch 'cassandra-4.0' into cassandra-4.1 2025-01-24 14:59:34 -08:00
David Capwell 3ddccf4521 CBUtil serialization of UTF8 does not handle all UTF8 properly
patch by David Capwell; reviewed by Yifan Cai for CASSANDRA-20234
2025-01-24 14:56:44 -08:00
Stefan Miklosovic ba4a0d4fcb
Add format_bytes and format_time functions
patch by Stefan Miklosovic; reviewed by Jordan West for CASSANDRA-19546

Co-authored-by: Cheng Wang <chengw@netflix.com>
2025-01-24 09:47:12 +01:00
Stefan Miklosovic 06f0965a08
Fix error when trying to assign a tuple to target type not being a tuple
patch by Stefan Miklosovic; reviewed by David Capwell for CASSANDRA-20237
2025-01-24 01:34:23 +01:00
Maxwell Guo b4bcdfa785
Fail CREATE TABLE LIKE statement if UDTs in target keyspace do not exist or they have different structure from ones in source keyspace
patch by Maxwell Guo; reviewed by Stefan Miklosovic, Benjamin Lerer for CASSANDRA-19966
2025-01-22 18:53:53 +01:00
Joseph Lynch 0d39ea4917
Support octet_length and length functions
Previously users would either have to read the data and check the length
themselves or enable UDF and register UDFs to check the length of
columns. This patch adds a subset of the SQL99 (binary) string
functions: "octet_length" defined on all types and "length" defined on
UTF8 strings.

patch by Joey Lynch; reviewed by Chris Lohfink and Jordan West for CASSANDRA-20102
2025-01-22 11:59:23 +01:00
Stefan Miklosovic a8702d6a44
Merge branch 'cassandra-5.0' into trunk 2025-01-22 01:11:26 +01:00
Marcus Eriksson 751d3f24cf
Make sure we can set parameters when configuring CassandraCIDRAuthorizer
patch by Marcus Eriksson; reviewed by Stefan Miklosovic for CASSANDRA-20220
2025-01-22 01:08:14 +01:00
Blake Eggleston 15d6437283 Merge branch 'cassandra-5.0' into trunk
* cassandra-5.0:
  Use mutation creation time for hint expiry rather than hint submission time
2025-01-21 12:16:05 -08:00
Blake Eggleston 0cc7a03523 Merge branch 'cassandra-4.1' into cassandra-5.0
* cassandra-4.1:
  Use mutation creation time for hint expiry rather than hint submission time
2025-01-21 12:13:37 -08:00
Blake Eggleston 246e65e69c Merge branch 'cassandra-4.0' into cassandra-4.1
* cassandra-4.0:
  Use mutation creation time for hint expiry rather than hint submission time
2025-01-21 12:10:53 -08:00
Matt Byrd 4f0ad22f12 Use mutation creation time for hint expiry rather than hint submission time
patch by Matt Byrd; reviewed by Chris Lohfink, reviewed by Blake Eggleston for CASSANDRA-20014
2025-01-21 12:05:00 -08:00
Stefan Miklosovic 144eacdf51
Merge branch 'cassandra-5.0' into trunk 2025-01-18 18:06:48 +01:00
Stefan Miklosovic 8d768336bf
Merge branch 'cassandra-4.1' into cassandra-5.0 2025-01-18 18:05:40 +01:00
Stefan Miklosovic f66183a711
Run audit_logging_options through santiation and validation on startup
patch by Stefan Miklosovic; reviewed by Brandon Williams for CASSANDRA-20208
2025-01-18 12:18:54 +01:00
Stefan Miklosovic 26eb6c624e
Merge branch 'cassandra-5.0' into trunk 2025-01-18 11:50:32 +01:00
Stefan Miklosovic 5447b5ebb5
Merge branch 'cassandra-4.1' into cassandra-5.0 2025-01-18 11:47:00 +01:00
Stefan Miklosovic 4f4c5542fe
Merge branch 'cassandra-4.0' into cassandra-4.1 2025-01-18 11:39:57 +01:00
Stefan Miklosovic 4bc61e5209
Do not attach rows and partitions to CheckForAbort when already attached
patch by Stefan Miklosovic; reviewed by Josh McKenzie for CASSANDRA-20135
2025-01-18 11:35:16 +01:00
Caleb Rackliffe cc86fc8865 Merge branch 'cassandra-5.0' into trunk
* cassandra-5.0:
  Add selected SAI index state and query performance metrics to nodetool tablestats
2025-01-17 12:32:49 -06:00
Sunil Ramchandra Pawar 79630fb42a Add selected SAI index state and query performance metrics to nodetool tablestats
patch by Sunil Ramchandra Pawar; reviewed by Caleb Rackliffe, Matt Byrd, and Maxim Muzafarov for CASSANDRA-20026
2025-01-17 12:24:27 -06:00
Sam Tunnicliffe a397a53891 Merge branch 'cassandra-5.0' into trunk 2025-01-17 09:12:01 +00:00
Sam Tunnicliffe 217490bdd8 Merge branch 'cassandra-4.1' into cassandra-5.0 2025-01-17 09:09:56 +00:00
Sam Tunnicliffe d14d16926e Merge branch 'cassandra-4.0' into cassandra-4.1 2025-01-17 09:08:09 +00:00
Stefan Miklosovic 6e8d0cde9e
Make JsonUtils serialize Instant always with the same format
patch by Stefan Miklosovic; reviewed by Maxim Muzafarov for CASSANDRA-20209
2025-01-17 09:23:07 +01:00
Caleb Rackliffe 2a3454a3ea Port Harry v2 to trunk
This commit ports to trunk work already done in the cep-15-accord branch, including parts of CASSANDRA-19955, CASSANDRA-20080, and CASSANDRA-20143.

patch by Caleb Rackliffe; reviewed by David Capwell and Alex Petrov for CASSANDRA-20200

Co-authored-by: Caleb Rackliffe <calebrackliffe@gmail.com>
Co-authored-by: Ariel Weisberg <aweisberg@apple.com>
Co-authored-by: Alex Petrov <oleksandr.petrov@gmail.com>
Co-authored-by: David Capwell <dcapwell@apache.org>
2025-01-16 14:48:00 -06:00
Stefan Miklosovic 407dbacb0a
Enable filtering of snapshots on keyspace, table and snapshot name in nodetool listsnapshots
patch by Stefan Miklosovic; reviewed by Jordan West, Bernardo Botella, Cheng Wang, Maxim Muzafarov for CASSANDRA-20151
2025-01-16 09:59:47 +01:00
Stefan Miklosovic b4e9399865
Create manifest upon loading where it does not exist or enrich it
When snapshot manifest does not exist, no snapshots would be found, because even
they would be loaded, since CASSANDRA-18111, snapshot's presence is logically
determined by the existence of at least one manifest.json file in any data dir. That
would result in snapshots not being shown e.g. in the output of
nodetool listsnapshots.

The fix consists of creating a manifest in each snapshot directory when not present.

When a manifest.json exists, its older format has not contained created_at field (pre-16789)
When this is detected, we will proceed to enrich such manifest by overwriting it
with a manifest of new format.

patch by Stefan Miklosovic; reviewed by Jordan West, Cheng Wang, Bernardo Botella for CASSANDRA-20150
2025-01-16 09:59:42 +01:00
Stefan Miklosovic b15a1f04b6
Propagate true size of snapshot in SnapshotDetailsTabularData to not call JMX twice in nodetool listsnapshots
This patch also opportunistically adds a new MBean method for SnapshotManager to
return true snapshot size for a particular snapshot.

patch by Stefan Miklosovic; reviewed by Maxim Muzafarov, Bernardo Botella for CASSANDRA-20149
2025-01-15 19:40:44 +01:00
Maxwell Guo 46ef00a315
Implementation of CEP-43
patch by Maxwell Guo; reviewed by Stefan Miklosovic, Benjamin Lerer for CASSANDRA-19964
2025-01-14 21:47:11 +01:00
Abe Ratnofsky aa5b8e3d3f Periodically disconnect roles that are revoked or have LOGIN=FALSE set
patch by Abe Ratnofsky; reviewed by Bernardo Botella Corbi, Francisco Guerrero Hernandez, and Jon Meredith for CASSANDRA-19385
2025-01-14 12:40:44 -08:00
Brandon Williams a289fa40fd Merge branch 'cassandra-5.0' into trunk 2025-01-14 06:21:53 -06:00
Brandon Williams 15d3deb269 Merge branch 'cassandra-4.1' into cassandra-5.0 2025-01-14 06:08:54 -06:00
Brandon Williams eff82685e2 Merge branch 'cassandra-4.0' into cassandra-4.1 2025-01-14 06:08:35 -06:00
Brandon Williams 64b8d6b9ad Allow hint delivery during schema mismatch
Patch by brandonwilliams; reviewed by smiklosovic for CASSANDRA-20188
2025-01-14 06:06:23 -06:00
Sam Tunnicliffe d8babd0191 Merge branch 'cassandra-5.0' into trunk 2025-01-13 09:53:59 +00:00
Sam Tunnicliffe 332341b9b6 Merge branch 'cassandra-4.1' into cassandra-5.0 2025-01-13 09:50:38 +00:00
Dmitry Konstantinov 6f90e962f5 Enforce CQL message size limit on multiframe messages
Patch by Dmitry Konstantinov; reviewed by Sam Tunnicliffe,
Caleb Rackliffe for CASSANDRA-20052
2025-01-13 09:47:37 +00:00