Commit Graph

32109 Commits

Author SHA1 Message Date
mck bdbdf8d710
Merge branch 'cassandra-6.0' into trunk
* cassandra-6.0:
  Jenkins improvements: fail-fast, disk-usage, helm overrides and safety
2026-07-28 22:18:59 +02:00
mck 6a5bb352af
Merge branch 'cassandra-5.0' into cassandra-6.0
* cassandra-5.0:
  Jenkins improvements: fail-fast, disk-usage, helm overrides and safety
2026-07-28 22:18:14 +02:00
Mick Semb Wever 209ef2b6c4
Jenkins improvements: fail-fast, disk-usage, helm overrides and safety
* Add ephemeral-storage requests and limits to agents, and log peak disk usage
Agents were evicted at the node level due to lack of disk space. Each pod needs minimum 100GiB, and each template now budgets 80Gi of the ~89Gi that a 100GiB node allocates, with docker's own volume carries a 60Gi sizeLimit.  Exceeding either evicts the pod, so logging has been added in each test split before and after the run. All script blocks in Jenkinsfile are now labeled for improved readability in test runs.

* `.build/run-ci` must not silently drop a site's helm values customisations
Long-lived instances like pre-ci.cassandra.apache.org carry values in addition to the jenkins-deployment.yaml, and any `helm upgrade -f jenkins-deployment.yaml` (or `.build/run-ci`) would drop them.  Allow these values to be kept in a separate file, passed in with `--values-override`. Before upgrading helm values, we now compare the deployed values against what is about to be applied and require confirmation for anything only the site holds.  This catches added keys and dropped list items (but it cannot catch every change).
Also keep the jenkins-home pvc claim on uninstall, so --only-tear-down no longer destroys build history. Add jenkins-test.sh and a gha workflow for test validating changes under .jenkins/

 patch by Mick Semb Wever; reviewed by Dmitry Konstantinov for CASSANDRA-21523
2026-07-28 21:58:28 +02:00
Stefan Miklosovic 63c0072e0c
Merge branch 'cassandra-6.0' into trunk 2026-07-28 14:14:04 +02:00
Stefan Miklosovic e874e3a90b
Prepare debian changelog for 6.0-alpha2 2026-07-28 13:55:01 +02:00
Stefan Miklosovic d411c9a2c7
Merge branch 'cassandra-6.0' into trunk 2026-07-28 13:21:47 +02:00
Stefan Miklosovic f6fa474948
Merge branch 'cassandra-5.0' into cassandra-6.0 2026-07-28 13:21:39 +02:00
Stefan Miklosovic b5f2a54210
Prepare debian changelog for 5.0.9 2026-07-28 12:57:24 +02:00
Stefan Miklosovic 74bb6b5eca
Merge branch 'cassandra-6.0' into trunk 2026-07-28 12:35:23 +02:00
Stefan Miklosovic 4c1d57e6f3
Merge branch 'cassandra-5.0' into cassandra-6.0 2026-07-28 12:35:15 +02:00
Stefan Miklosovic 5e1d691818
Merge branch 'cassandra-4.1' into cassandra-5.0 2026-07-28 12:35:06 +02:00
Stefan Miklosovic 2ddb92091c
Prepare debian changelog for 4.1.12 2026-07-28 12:18:07 +02:00
Stefan Miklosovic dba6b7df80
Merge branch 'cassandra-6.0' into trunk 2026-07-28 11:53:35 +02:00
Stefan Miklosovic f8b887e4df
Merge branch 'cassandra-5.0' into cassandra-6.0 2026-07-28 11:53:27 +02:00
Stefan Miklosovic d7da71a88a
Merge branch 'cassandra-4.1' into cassandra-5.0 2026-07-28 11:53:14 +02:00
Stefan Miklosovic bde65f163e
Merge branch 'cassandra-4.0' into cassandra-4.1 2026-07-28 11:53:03 +02:00
Stefan Miklosovic 172099f4a8
Prepare debian changelog for 4.0.21 2026-07-28 11:38:14 +02:00
Francisco Guerrero 57dabaea8c Merge branch 'cassandra-6.0' into trunk
* cassandra-6.0:
  Bound declared value length against readable bytes in CBUtil
2026-07-27 10:20:02 -05:00
Francisco Guerrero 247289d7b6 Merge branch 'cassandra-5.0' into cassandra-6.0
* cassandra-5.0:
  Bound declared value length against readable bytes in CBUtil
2026-07-27 10:13:42 -05:00
Francisco Guerrero ecc0a3e77b Merge branch 'cassandra-4.1' into cassandra-5.0
* cassandra-4.1:
  Bound declared value length against readable bytes in CBUtil
2026-07-27 10:05:03 -05:00
Francisco Guerrero 2507eceb29 Merge branch 'cassandra-4.0' into cassandra-4.1
* cassandra-4.0:
  Bound declared value length against readable bytes in CBUtil
2026-07-27 10:01:06 -05:00
Francisco Guerrero 251b0e9b91 Bound declared value length against readable bytes in CBUtil
A 32-bit length field read from the wire by CBUtil.readValue (and its
siblings) flowed directly into new byte[length] with no upper bound,
allowing an unauthenticated client to drive the JVM into
OutOfMemoryError: 'Requested array size exceeds VM limit' — and, with
the default -XX:OnOutOfMemoryError=kill -9 %p, terminate the process —
by declaring Integer.MAX_VALUE as the SASL-token length in AUTH_RESPONSE.

Guard the allocation in the single private readRawBytes(ByteBuf, int)
that all int32-length readers funnel through, rejecting lengths that
exceed the buffer's readable bytes with a ProtocolException.

patch by Francisco Guerrero; reviewed by Stefan Miklosovic for CASSANDRA-21521
2026-07-27 09:51:36 -05:00
Francisco Guerrero 4412926e4f Merge branch 'cassandra-6.0' into trunk
* cassandra-6.0:
  ninja fix: ensure defaultReadThresholds is cleared for CASSANDRA-21467
2026-07-27 09:37:15 -05:00
Francisco Guerrero 3cae8aa6f6 ninja fix: ensure defaultReadThresholds is cleared for CASSANDRA-21467 2026-07-27 09:31:35 -05:00
Maxim Muzafarov 5bf01cc7c0
Merge branch 'cassandra-6.0' into trunk
* cassandra-6.0:
  Allow unreserved keywords as user and identity names in USER and IDENTITY statements
2026-07-27 16:10:11 +02:00
Maxim Muzafarov c4c3048b13
Allow unreserved keywords as user and identity names in USER and IDENTITY statements
patch by Maxim Muzafarov; reviewed by Dmitry Konstantinov for CASSANDRA-21510
2026-07-27 16:03:06 +02:00
Stefan Miklosovic af202bddc2
Merge branch 'cassandra-6.0' into trunk 2026-07-27 15:53:17 +02:00
Francisco Guerrero 8fc52f5d2f
Reduce allocations in DefaultQueryOptions when read thresholds are enabled
patch by Francisco Guerrero; reviewed by Dmitry Konstantinov, Stefan Miklosovic for CASSANDRA-21467
2026-07-27 15:50:28 +02:00
Francisco Guerrero a3ec88632d Merge branch 'cassandra-6.0' into trunk
* cassandra-6.0:
  Ensure a Message's Response streamId is always set
2026-07-26 21:13:21 -05:00
Francisco Guerrero f7f52421c7 Merge branch 'cassandra-5.0' into cassandra-6.0
* cassandra-5.0:
  Ensure a Message's Response streamId is always set
2026-07-26 21:06:39 -05:00
Francisco Guerrero 79c8669b84 Merge branch 'cassandra-4.1' into cassandra-5.0
* cassandra-4.1:
  Ensure a Message's Response streamId is always set
2026-07-26 20:59:15 -05:00
Francisco Guerrero 9ddfe0fb22 Ensure a Message's Response streamId is always set
patch by Francisco Guerrero; reviewed by Caleb Rackliffe, Benedict Elliot Smith, Tejal Chakeres, Alexander Mitin for CASSANDRA-21508
2026-07-26 20:51:21 -05:00
Dmitry Konstantinov b3acdfda08 Merge branch 'cassandra-6.0' into trunk
* cassandra-6.0:
  Reduce number of scheduledTasks on metric id release in ThreadLocalMetrics
2026-07-26 17:48:09 +01:00
Dmitry Konstantinov ddfdf5d69f Reduce number of scheduledTasks on metric id release in ThreadLocalMetrics
Use a single one-time scheduled task with two tick-tock buffers to recycle metric IDs after a sufficiently long delay.
Use phantom references for ThreadLocalMetrics cleanup ony if it is needed to reduce the references processing overhead.

patch by Dmitry Konstantinov; reviewed by Benedict Elliott Smith for CASSANDRA-21475
2026-07-26 17:46:40 +01:00
Stefan Miklosovic 3bee9024c2
Merge branch 'cassandra-6.0' into trunk 2026-07-26 11:27:16 +02:00
koo.taejin 03304bce53
Cache various Enum.values() used in deserialization to avoid per-read array allocation
patch by Koo Taejin; reviewed by Dmitry Konstantinov, Stefan Miklosovic for CASSANDRA-21528
2026-07-26 11:15:22 +02:00
Edward db0871ce8b Don't increment client metrics on messaging service connection unpause
patch by Edward Chu; reviewed by Aleksey Yeschenko for CASSANDRA-21491
2026-07-25 13:04:33 +01:00
Stefan Miklosovic 3fad760416
Merge branch 'cassandra-6.0' into trunk 2026-07-25 09:56:30 +02:00
Arvind Kandpal f51c29c196
Add compound primary key example to nodetool getendpoints help
patch by Arvind Kandpal; reviewed by Dmitry Konstantinov, Stefan Miklosovic for CASSANDRA-15904
2026-07-25 09:53:44 +02:00
Stefan Miklosovic 7666b19ac6
Merge branch 'cassandra-6.0' into trunk 2026-07-24 23:23:36 +02:00
dhingarkan 564d30ad8e
Fix Accord transaction error message when altering a table
patch by Motoki Unno; reviewed by Dmitry Konstantinov, Stefan Miklosovic for CASSANDRA-20580
2026-07-24 23:22:26 +02:00
Stefan Miklosovic 0840eb35af
Merge branch 'cassandra-6.0' into trunk 2026-07-24 13:17:09 +02:00
Dmitry Konstantinov 0040482e26
Reduce disk space usage by CommitLogSegmentManagerCDCTest
patch by Dmitry Konstantinov; reviewed by Michael Semb Wever for CASSANDRA-21534
2026-07-24 13:13:17 +02:00
Stefan Miklosovic ca42cfe68d
Add nodetool getreplicas
nodetool getendpoints is deprecated. Also, all StorageServiceMBean.getNaturalEndpoints* methods are
deprecated and they call their replica counterparts. The deprecated methods are also not used directly anywhere
in the code (nor tests).

patch by Stefan Miklosovic; reviewed by Brandon Williams for CASSANDRA-17665
2026-07-23 21:51:51 +02:00
Stefan Miklosovic e805b8aa32
Merge branch 'cassandra-6.0' into trunk 2026-07-22 14:58:50 +02:00
Stefan Miklosovic 4066139d3f
ninja: fix wrong default for compression_dictionary_cache_expire in documentation 2026-07-22 14:57:00 +02:00
Stefan Miklosovic 57cfd6b123
Merge branch 'cassandra-6.0' into trunk 2026-07-22 10:50:00 +02:00
Stefan Miklosovic fb46c8126f
Merge branch 'cassandra-5.0' into cassandra-6.0 2026-07-22 10:49:05 +02:00
Stefan Miklosovic 1920fffad3
Merge branch 'cassandra-4.1' into cassandra-5.0 2026-07-22 10:48:05 +02:00
Stefan Miklosovic 2293c58805
Merge branch 'cassandra-4.0' into cassandra-4.1 2026-07-22 10:46:34 +02:00