This is an automated email from the ASF dual-hosted git repository. belliottsmith pushed a commit to branch trunk in repository https://gitbox.apache.org/repos/asf/cassandra.git
commit 890ba2a3645b333f6c5e8793252e593c127204cf Merge: b6f175bfc2 41cf61402c Author: Benedict Elliott Smith <[email protected]> AuthorDate: Wed May 13 15:16:04 2026 +0100 Merge branch 'cassandra-6.0' into trunk .build/checkstyle.xml | 12 +- CHANGES.txt | 3 + modules/accord | 2 +- .../cassandra/concurrent/ExecutorLocals.java | 15 +- .../config/{AccordSpec.java => AccordConfig.java} | 117 ++- .../config/CassandraRelevantProperties.java | 5 + src/java/org/apache/cassandra/config/Config.java | 4 +- .../cassandra/config/DatabaseDescriptor.java | 25 +- src/java/org/apache/cassandra/cql3/Attributes.java | 4 +- .../apache/cassandra/cql3/ColumnsExpression.java | 4 +- .../apache/cassandra/cql3/ElementExpression.java | 4 +- src/java/org/apache/cassandra/cql3/Json.java | 4 +- src/java/org/apache/cassandra/cql3/Operation.java | 7 +- src/java/org/apache/cassandra/cql3/Ordering.java | 12 +- .../org/apache/cassandra/cql3/QueryOptions.java | 23 +- src/java/org/apache/cassandra/cql3/Relation.java | 6 +- .../cassandra/cql3/VariableSpecifications.java | 19 +- .../cassandra/cql3/conditions/ColumnCondition.java | 6 +- .../cassandra/cql3/functions/FunctionCall.java | 4 +- .../cql3/restrictions/CustomIndexExpression.java | 4 +- .../cql3/restrictions/StatementRestrictions.java | 12 +- .../cassandra/cql3/selection/Selectable.java | 8 +- .../cassandra/cql3/statements/BatchStatement.java | 2 +- .../cassandra/cql3/statements/DeleteStatement.java | 4 +- .../cql3/statements/ModificationStatement.java | 9 +- .../cassandra/cql3/statements/SelectStatement.java | 7 +- .../cql3/statements/TransactionStatement.java | 20 + .../cassandra/cql3/statements/UpdateStatement.java | 11 +- .../statements/schema/CreateViewStatement.java | 1 + .../org/apache/cassandra/cql3/terms/InMarker.java | 4 +- .../org/apache/cassandra/cql3/terms/Lists.java | 6 +- src/java/org/apache/cassandra/cql3/terms/Maps.java | 6 +- .../org/apache/cassandra/cql3/terms/Marker.java | 4 +- .../apache/cassandra/cql3/terms/MultiElements.java | 4 +- src/java/org/apache/cassandra/cql3/terms/Term.java | 7 +- .../org/apache/cassandra/cql3/terms/Terms.java | 15 +- .../cql3/transactions/ConditionStatement.java | 6 +- .../cql3/transactions/RowDataReference.java | 4 +- .../org/apache/cassandra/db/ConsistencyLevel.java | 35 +- src/java/org/apache/cassandra/db/ReadCommand.java | 8 +- .../cassandra/db/virtual/AccordDebugKeyspace.java | 58 +- src/java/org/apache/cassandra/journal/Segment.java | 9 +- .../org/apache/cassandra/locator/ReplicaPlans.java | 4 +- .../metrics/AccordCoordinatorMetrics.java | 5 + .../cassandra/metrics/AccordExecutorMetrics.java | 1 + .../metrics/LogLinearDecayingHistograms.java | 7 + .../cassandra/metrics/LogLinearHistogram.java | 6 + .../metrics/ShardedDecayingHistograms.java | 48 ++ .../apache/cassandra/metrics/ShardedHistogram.java | 16 + .../apache/cassandra/net/ArtificialLatency.java | 402 +++++++++++ .../cassandra/net/InboundMessageHandler.java | 2 + src/java/org/apache/cassandra/net/Message.java | 71 +- src/java/org/apache/cassandra/net/MessageFlag.java | 13 +- .../apache/cassandra/net/OutboundConnection.java | 2 + .../org/apache/cassandra/net/OutboundSink.java | 104 ++- src/java/org/apache/cassandra/net/ParamType.java | 5 +- .../org/apache/cassandra/net/ResponseContext.java | 23 + .../apache/cassandra/net/ResponseVerbHandler.java | 6 +- src/java/org/apache/cassandra/net/Verb.java | 16 +- .../org/apache/cassandra/service/ClientWarn.java | 2 +- .../org/apache/cassandra/service/StorageProxy.java | 36 +- .../cassandra/service/StorageProxyMBean.java | 9 + .../cassandra/service/accord/AccordCache.java | 13 +- .../service/accord/AccordCommandStore.java | 43 +- .../service/accord/AccordCommandStores.java | 4 +- .../cassandra/service/accord/AccordExecutor.java | 430 ++++++++--- .../accord/AccordExecutorAbstractLockLoop.java | 101 +-- .../AccordExecutorAbstractSemiSyncSubmit.java | 15 +- .../accord/AccordExecutorSemiSyncSubmit.java | 38 +- .../service/accord/AccordExecutorSimple.java | 11 +- .../service/accord/AccordExecutorSyncSubmit.java | 12 +- .../cassandra/service/accord/AccordKeyspace.java | 4 +- .../service/accord/AccordMessageSink.java | 51 +- .../service/accord/AccordObjectSizes.java | 55 +- .../service/accord/AccordSafeCommandStore.java | 4 +- .../service/accord/AccordSafeCommandsForKey.java | 25 + .../cassandra/service/accord/AccordService.java | 84 ++- .../cassandra/service/accord/AccordTask.java | 111 +-- .../service/accord/AccordVerbHandler.java | 13 + .../cassandra/service/accord/RangeIndex.java | 6 +- .../cassandra/service/accord/TokenRange.java | 5 +- .../cassandra/service/accord/api/AccordAgent.java | 77 +- .../service/accord/api/AccordScheduler.java | 9 +- .../service/accord/api/AccordTimeService.java | 13 +- .../service/accord/api/AccordWaitStrategies.java | 4 +- .../service/accord/debug/AccordRemoteTracing.java | 385 ++++++++++ .../service/accord/debug/AccordTracing.java | 516 ++++++++++++-- .../service/accord/debug/DebugExecution.java | 242 +++++++ .../service/accord/interop/AccordInteropApply.java | 6 +- .../accord/interop/AccordInteropExecution.java | 12 +- .../accord/interop/AccordInteropPersist.java | 132 +--- .../service/accord/interop/AccordInteropRead.java | 2 + .../service/accord/journal/AccordJournal.java | 16 +- .../cassandra/service/accord/journal/Replay.java | 2 +- .../serializers/CommandStoreSerializers.java | 70 +- .../serializers/RemoteSuccessSerializers.java | 56 ++ .../accord/topology/AccordTopologyService.java | 37 +- .../service/accord/topology/FastPathStrategy.java | 20 +- .../accord/topology/SimpleFastPathStrategy.java | 25 +- ...stPathStrategy.java => UpFastPathStrategy.java} | 15 +- .../accord/topology/WatermarkCollector.java | 18 +- .../cassandra/service/accord/txn/TxnData.java | 8 +- .../cassandra/service/accord/txn/TxnUpdate.java | 2 +- .../cassandra/service/accord/txn/TxnWrite.java | 8 +- .../service/reads/AbstractReadExecutor.java | 1 - .../cassandra/tcm/transformations/AlterSchema.java | 4 +- .../cassandra/tools/StandaloneJournalUtil.java | 6 +- src/java/org/apache/cassandra/tracing/Tracing.java | 11 +- .../transport/messages/ExecuteMessage.java | 4 + src/java/org/apache/cassandra/utils/Clock.java | 30 + .../org/apache/cassandra/utils/MonotonicClock.java | 34 +- .../cassandra/utils/MonotonicClockTranslation.java | 3 +- .../utils/concurrent/ConcurrentLinkedStack.java | 4 +- .../utils/concurrent/LockWithAsyncSignal.java | 1 + test/conf/cassandra.yaml | 7 +- test/conf/logback-error.xml | 56 ++ .../distributed/impl/CoordinatorHelper.java | 1 + .../cassandra/distributed/impl/Instance.java | 8 +- .../cassandra/distributed/impl/InstanceConfig.java | 16 +- .../test/accord/AccordDropTableBase.java | 2 +- .../test/accord/AccordInteroperabilityTest.java | 9 +- .../distributed/test/accord/AccordLoadTest.java | 787 +++++++++++++++++---- .../distributed/test/accord/AccordMetricsTest.java | 10 +- .../distributed/test/accord/AccordTestBase.java | 6 +- .../accord/AccordWriteInteroperabilityTest.java | 1 + .../accord/MigrationFromAccordReadRaceTest.java | 3 + .../accord/MigrationFromAccordWriteRaceTest.java | 3 + .../accord/MigrationToAccordWriteRaceTest.java | 3 + .../FullAccordInteropMultiNodeTableWalkTest.java | 3 + ...edReadsAccordInteropMultiNodeTableWalkTest.java | 3 + .../test/log/ClusterMetadataTestHelper.java | 3 +- .../accord/journal/AccordJournalBurnTest.java | 2 +- .../cassandra/simulator/ClusterSimulation.java | 1 + .../simulator/systems/SimulatedAction.java | 4 +- .../cassandra/simulator/systems/SimulatedTime.java | 6 +- .../test/AccordJournalSimulationTest.java | 4 +- .../concurrent/LocalAwareExecutorPlusTest.java | 2 +- .../config/DatabaseDescriptorRefTest.java | 29 +- .../config/YamlConfigurationLoaderTest.java | 2 +- .../db/ReadCommandVerbHandlerOutOfRangeTest.java | 2 +- .../cassandra/db/ReadCommandVerbHandlerTest.java | 2 +- .../db/compaction/AbstractPendingRepairTest.java | 2 +- .../compaction/CompactionAccordIteratorsTest.java | 2 + .../db/compaction/CompactionIteratorTest.java | 2 +- .../CompressionDictionaryEventHandlerTest.java | 4 +- .../db/transform/DuplicateRowCheckerTest.java | 2 +- .../db/virtual/AccordDebugKeyspaceTest.java | 19 +- .../cassandra/index/accord/RouteIndexTest.java | 8 +- .../index/internal/CassandraIndexTest.java | 2 +- .../org/apache/cassandra/net/MatcherResponse.java | 10 +- .../unit/org/apache/cassandra/net/MessageTest.java | 4 +- .../cassandra/net/SimulatedMessageDelivery.java | 2 +- .../net/StartupClusterConnectivityCheckerTest.java | 5 +- .../org/apache/cassandra/repair/RepairJobTest.java | 4 +- .../org/apache/cassandra/repair/ValidatorTest.java | 2 +- .../service/accord/AccordCommandTest.java | 10 +- .../service/accord/AccordMessageSinkTest.java | 5 +- .../service/accord/AccordReadRepairTest.java | 5 +- .../cassandra/service/accord/AccordTestUtils.java | 13 +- .../service/accord/AccordTopologyTest.java | 2 +- .../service/accord/CommandChangeTest.java | 9 +- .../cassandra/service/accord/EpochSyncTest.java | 4 +- .../accord/SimulatedAccordCommandStore.java | 16 +- .../SimulatedAccordCommandStoreTestBase.java | 11 +- .../service/accord/SimulatedAccordTaskTest.java | 2 +- .../serializers/CommandsForKeySerializerTest.java | 146 ++-- ...rategyTest.java => UpFastPathStrategyTest.java} | 4 +- .../cassandra/tcm/DiscoverySimulationTest.java | 2 +- .../apache/cassandra/utils/AccordGenerators.java | 71 +- .../cassandra/utils/CassandraGenerators.java | 3 + .../cassandra/utils/FixedMonotonicClock.java | 4 +- .../apache/cassandra/utils/FreeRunningClock.java | 4 +- 172 files changed, 4138 insertions(+), 1312 deletions(-) diff --cc CHANGES.txt index 32b6f2d435,e24f6bd82e..1b24ae81c5 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,16 -1,7 +1,19 @@@ +7.0 + * Allow nodetool garbagecollect to take a user defined list of SSTables (CASSANDRA-16767) + * Add a guardrail for misprepared statements (CASSANDRA-21139) +Merged from 6.0: + * 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) +Merged from 5.0: + * Use estimated compressed size for tables to check if there is enough free space for a compaction (CASSANDRA-21245) + * Fix failing select on system_views.settings for non-string keys (CASSANDRA-21348) + + 6.0-alpha2 + * 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) --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
