This is an automated email from the ASF dual-hosted git repository.
bbejeck pushed a change to branch kip1071
in repository https://gitbox.apache.org/repos/asf/kafka.git
from b2f7e25b34b KIP-1071: Fix StickyTaskAssignor (#18051)
add 1f3f03579c2 KAFKA-17979 Change [pytest] to [tool:pytest] in setup.cfg
file (#17740)
add 700bdd5feeb KAFKA-17997 Remove deprecated config
log.message.timestamp.difference.max.ms (#17928)
add b8c8e0c7131 MINOR: Convert DynamicBrokerReconfigurationTest to KRaft
(#17905)
add e7bbcdb2514 KAFKA-18090: Add ShareMemberDescription and Assignment
(#17975)
add 9d23f89e057 KAFKA-17338 ConsumerConfig should prevent using partition
assignors with CONSUMER group protocol (#16899)
add 6237325fb14 KAFKA-15561 [5/N]: Integration tests for new subscribe API
with Re2J pattern (#17964)
add ae3c5dec99b KAFKA-18013: Add support for duration based offset reset
strategy to Kafka Consumer (#17972)
add 7ca02fd9084 KAFKA-16617 Add KRaft info for the `advertised.listeners`
doc description (#17552)
add 615f1a0bf99 KAFKA-16181: Use incrementalAlterConfigs when updating
broker configs by kafka-configs.sh (#15304)
add 60ce83b2c65 KAFKA-18123 Fix flaky
DynamicBrokerReconfigurationTest#testThreadPoolResize (#17986)
add 44cb90222c6 MINOR: Refactor configs in GroupMetadataManager (#17982)
add 45c094ed23e KAFKA-18130 Remove kafka.utils.VersionInfo (#18001)
add c3d22180d45 KAFKA-18128 Fix failed test
MetadataSchemaCheckerToolTest.testVerifyEvolutionGit in PR (#17996)
add 65fb274d296 KAFKA-17998: Fix the flaky
OffloadAndTxnConsumeFromLeaderTest (#17959)
add b4258a0cb93 KAFKA-18070: Update kafka-metadata-quorum.sh output in
docs to match KIP-853 (#17921)
add f9215dae3b6 KAFKA-12770 introduce `checkstyleVersion` gradle property
(for overriding CheckStyle project-defined dependency version) (#10967)
add 6fd951a9c0a KAFKA-17610 Drop alterConfigs (#18002)
add d00f0ecf1a1 KAFKA-18124 Remove zk migration from `RaftManagerTest`,
`BrokerLifecycleManagerTest`, `KafkaConfigTest`, and `ReplicaManagerTest`
(#17990)
add ff44f5e0a51 KAFKA-17554 Flaky testFutureCompletionOutsidePoll in
ConsumerNetworkClientTest (#17217)
add f87c04854bc KAFKA-18013: Add integration test for duration based reset
strategy in KafkaConsumer (#18008)
add 184b64fb416 KAFKA-18026: migrate KStream and KTable aggregates to use
ProcesserSupplier#stores (#17929)
add 275b995bf2c KAFKA-18095; Allow a member to join without subscription
under new consumer protocol (#18003)
add ac08325bddf KAFKA-18047: Add
org.apache.kafka.automatic.config.providers to System Properties section
(#17920)
add a8cdbaf4b30 KAFKA-18138: The controller must add all extant brokers to
BrokerHeartbeatTracker when activating (#18009)
add c76fb5cb9b2 KAFKA-17893: Support record keys in the
foreignKeyExtractor argument of KTable foreign join (#17756)
add 180112a4a95 KAFKA-18084 Added write locks in SharePartition where
locks were async calls were being made (#17957)
add ac8b3dfbf00 KAFKA-18060 new coordinator does not handle
TxnOffsetCommitRequest with empty member id when using CONSUMER group (#17914)
add fe88232b07c KAFKA-17750 Extend kafka-consumer-groups command line tool
to support new consumer group (part 1) (#17958)
add dbae448a052 KAFKA-18137: Unloading transaction state incorrectly
removes loading partitions (#18011)
add 095bd0a6d46 KAFKA-18101: Merge duplicate assertFutureThrows and
assertFutureExceptionTypeEquals (#17991)
add 31d97bc3c99 KAFKA-18026: KIP-1112, skip re-registering aggregate
stores in StatefulProcessorNode (#18015)
add 8e6ea2c1d65 MINOR: fix unmatched tag in upgrade.html (#18032)
add b2953187963 KAFKA-18145 Fix failed e2e
ConnectDistributedTest.test_dynamic_logging (#18023)
add 2ee7e4d22c9 KAFKA-18152 add 0.11, 1.0, 1.1, and 2.0 streams
dependencies to dockerfile (#18025)
add f60382bf216 KAFKA-18127 Validate SubscriptionPattern used on v0 HB
(#17989)
add 81447c7c954 KAFKA-18153 remove jenkins settings from settings.gradle
(#18026)
add 423a6353a8a KAFKA-18025: Rework acquisition lock timeout test (#17985)
add f80e726e9bc MINOR: Install docker-compose on docker-build workflows
(#18037)
add bd0ea709125 KAFKA-18096: Allow join with regex if no matching topics
(#18024)
add 6a43a6bddfa MINOR: Fix error in installing docker-compose on
docker-builds workflows (#18042)
add 0322764ab27 KAFKA-17460 Remove downgrade_test.py (#18038)
add 2d39d5be64d KAFKA-17783: Adding listeners to remove share partition on
partition changes (#17796)
add 6ef8b1c4c0d KAFKA-18132 Remove "session.timeout.ms" from
connect-distributed.properties to fix connect e2e (#18005)
add 4362ab70901 KAFKA-17947: Update currentLag(), pause(), and resume() to
update SubscriptionState in background thread (#17699)
add 2b43c49f51d KAFKA-18050 Upgrade the checkstyle version to 10.20.2
(#17999)
add 41fc058573e MINOR: Add protocol documentation about ApiVersions
Fallback behaviour (#17967)
add 8fde6dedea8 KAFKA-18155 : Fix bug in response handler for
ShareAcknowledge (#18029)
add c3506834e97 KAFKA-17598; Command line validation tool for RE2J regex
(#18031)
add e99561e1f30 KAFKA-17593; [10/N] Remove resolved regular expressions
when unsubscribed (#17976)
add 2ad111ff3e5 MINOR: Add dependencies label automatically to PRs (#18052)
add 50b6953661a KAFKA-18122 : Added support for ShareConsumeBenchWorker
(#17984)
add fa54065298d KAFKA-18086: Enable propagation of the error message when
writing state (#17980)
add 09e8fa2dbe0 KAFKA-18026: KIP-1112, migrate stream-table joins to use
ProcesserSupplier#stores (#18047)
add e30edb3eff0 KAFKA-18052: Decouple the dependency of feature stable
version to the metadata version (#17886)
add e663c3857ab KAFKA-18129: `SharePartition#maybeInitialize` should
complete the future outsize the write lock (#18053)
add bdd36f0adb0 KAFKA-18140 Remove ZooKeeperMainWithTlsSupportForKafka
(#18022)
add 970d8930ac7 KAFKA-18159 Remove onPartitionsRevoked and
onPartitionsAssigned from SinkTask (#18049)
add 0f2a9687903 MINOR: Increase Gradle daemon heap size to 4Gb (#18067)
add 0ff55c316aa KAFKA-18106: Generate LeaderAndIsrUpdates on unclean
shutdown (#18045)
add 82fd7637050 MINOR Ensure quarantinedTest always copies test reports
(#18068)
add 3a049903089 MINOR: Add tiered-storage label automatically to PRs
(#18059)
add 36b48536f62 MINOR: Fix broken test (#18062)
add 8864cba0e85 MINOR: Update full request condition in
ConsumerGroupHeartbeat request handling (#18061)
add e7d986e48c2 KAFKA-17550: DescribeGroups v6 exploitation (#17706)
add 81ada393d3e MINOR: convert ConsumerBounceTest to KRaft (#17997)
add 22f4c4a1733 KAFKA-18148 Remove exceptions from method signatures in
Persister (#18064)
add ccca9f146e3 KAFKA-17945, KAFKA-17944: Handling leader epoch error for
offset reset APIs (#17979)
add 0bbed823e81 KAFKA-17200: Allow the replication of user internal topics
(#17815)
add b7294d92e11 KAFKA-17593; [11/11] Update subscription type (#18020)
add c9209892053 MINOR Set min and max heap for Checkstyle (#18071)
add 755adf8a566 KAFKA-14563: RemoveClient-Side AddPartitionsToTxn Requests
(#17698)
add 15206d5083b KAFKA-18084 Added usage for rollback state while
SharePartition acquires records (#17965)
add 9ee32472817 MINOR: Fix broken javadoc in NetworkClientTest (#18075)
add 417bd22a06f KAFKA-18163: Move VerificationGuardTest to storage module
(#18058)
new b719edae635 Very initial (compiling) streams RPCs.
new f5020ad2e0c Reslove merge conflict from 11/25 trunk rebase -
StreamsInitialize RPC and some errors
new 95f6e141de9 Resolve merge conflict from 11/25 trunk rebase - Define
RPCs to perform client-side assignment
new c0f8c2fdaa4 Resolve merge conflict from 11/25 rebase - Specify
AsyncKafkaConsumer interface with Streams for the Rebalance PoC
new de6e314e08e Implement StreamsInitialize request manager
new eb2865d3b76 Resolve conflict from 11/25 trunk rebase - Create and
inject StreamsHeartbeatRequestManager
new e0b43baa930 Minor: Test fixes
new 793b02a5fdc Define initial record types for the consumer offset topic
new 9572b7c394e Resolve merge conflict from 11/25 trunk rebase Implement
InitStreamsApp RPC in the group coordinator
new 22f2de4a636 Add Assignment class in group coordinator for Streams
new 1c69f5ab038 Minor: Rename TaskId to TaskIds
new 6a292e215ac Resolve conflict from 11/25 rebase Basic heartbeat RPC
handler
new ecc083849f2 Add streams group member
new 7284e6d1001 Define the assignor interface for streams and implement a
simple assignor
new 65897c276fc Reslove conflicts from 11/25 rebase - Create
assignment-related classes for streams groups
new b174b9233e8 Reslove confict from 11/25 trunk rebase - Replay all
streams-related records
new a4a5245239e Resolve conflict in 12/6 rebase - Resolve conflicts from
11/25 rebase - Get SmokeTestDriverIntegrationTest working
new ac6a2e4d48f Resolve conficts from 12/6 rebase Resolve conflicts for
11/25 trunk rebase - Rebased on AK trunk 2024-07-16
new 871aa86e88f Resovle conflicts from 11/25 trunk rebase - Update RPCs
new 50cdd5f2dc3 Resolve conflicts from 12/6 rebase Resolve conflicts from
11/25 trunk rebase - Implement DescribeStreamsGroup RPC handling
new 00a7e854449 Resolve conflict from 11/25 trunk rebase - Rebase on AK
trunk 2024-08-15
new 50482108dd3 Minor: Revert test changes
new 9c2bc6ed30d resovle conflict from 12/6 rebase - StickyTaskAssignor
new 5ca2155e1da Rename streamsHeartbeatX and streamsInitializeX to
streamsGroupX
new 9eba835a6f2 Improve the Streams group initialization handler
new 435c780bf58 Resolve conflict from 11/25 trunk rebase - Streams
reconciliation logic
new ece269de757 Resolve confict from 12/6 rebase - Add broker configs for
streams group
new c0ae9c53860 Resolve conflict from 11/25 trunk rebase - Rebase on AK
trunk 2024-09-25
new ccb02aabd06 KAFKA-17125: finalize TaskId (#17300)
new 09a25934578 MINOR: Use subtopologyId and spelling consistently (#17370)
new 8d0a6f84e59 MINOR: Fix unit tests (#17374)
new 4f1328f5b07 Complete topic metadata for automatic topic creation
(#17391)
new 8b6d3f921d7 Resolve conflicts from 11/25 trunk rebase - MINOR: Rebase
dev branch on current trunk
new d43bdc34502 Resolve conflicts from trunk rebase - Port tools for topic
configuration (#17371)
new 4ccb85115f4 Resolve conflicts from 11/25 trunk rebase - Internal topic
auto creation (#17433)
new 6cda02d7e85 Introduce the streams membership manager (#17564)
new 4a68f95cacb Resolve conflict from 12/6 rebase - Resolve conflicts from
11/15 trunk rebase - Initialize topologies as part of heartbeat (#17695)
new 718fb9b2c4f Correctness updates from rebase
new ee307af22a0 Fixes from rebase
new a085a76d49d Resolve conflict from 12/6 trunk rebase - KIP1071 trunk
rebase 11_25 add streams membership manager stream thread integration (#17968)
new 1f1c0cb6dfa Remove superfluous record version
new 5b93228834f Remove unused import
new fb4a3e6fd75 Topology epochs and topic validation (#17721)
new ce9ce51e8ef MINOR: Updates from running spotless apply (#18007)
new ddfadf72ada Follow-ups to the integration of Streams membership
manager (#18019)
new 4af637c7e1b Add group.protocol config handling for streams (#18033)
new dfc69c23016 MINOR: add endpoint to sync RPCs with KIP (#18035)
new 9783c987f4d Implement support for streams groups in kafka-groups.sh
(#18043)
new cf2586103e7 Use LeaveOnClose event with Streams membership manager
(#18054)
new 4e1b29d8aa7 Add KIP-1082 (#18044)
new 60f7c5af2f5 MINOR: Fix epoch validation (#18065)
new b26b1088628 KIP-1071: Fix StickyTaskAssignor (#18051)
new f0262a71691 Fixes from trunk rebase
new f16c7214f55 Merge branch 'trunk_rebase_12_6' into kip1071
new 1ae9778e077 Fixes from rebase/merge
The 55 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.github/configs/labeler.yml | 12 +
.github/workflows/docker_build_and_test.yml | 5 +
.../docker_official_image_build_and_test.yml | 5 +
README.md | 1 +
build.gradle | 21 +-
checkstyle/checkstyle.xml | 4 +-
checkstyle/import-control.xml | 1 +
checkstyle/suppressions.xml | 3 +-
.../java/org/apache/kafka/clients/admin/Admin.java | 35 -
.../kafka/clients/admin/AlterConfigsOptions.java | 2 +-
.../kafka/clients/admin/AlterConfigsResult.java | 2 +-
.../kafka/clients/admin/ForwardingAdmin.java | 6 -
.../kafka/clients/admin/KafkaAdminClient.java | 80 +-
.../kafka/clients/admin/MemberDescription.java | 2 +-
.../kafka/clients/admin/ShareGroupDescription.java | 10 +-
...rAssignment.java => ShareMemberAssignment.java} | 10 +-
...escription.java => ShareMemberDescription.java} | 77 +-
.../internals/DescribeConsumerGroupsHandler.java | 17 +-
.../internals/DescribeShareGroupsHandler.java | 21 +-
.../kafka/clients/consumer/ConsumerConfig.java | 57 +-
.../kafka/clients/consumer/KafkaConsumer.java | 5 +-
.../kafka/clients/consumer/MockConsumer.java | 10 +
.../internals/AbstractHeartbeatRequestManager.java | 32 +-
.../consumer/internals/AsyncKafkaConsumer.java | 116 +--
.../internals/AutoOffsetResetStrategy.java | 106 ++-
.../consumer/internals/ConsumerMetadata.java | 2 +-
.../clients/consumer/internals/OffsetFetcher.java | 13 +-
.../consumer/internals/OffsetFetcherUtils.java | 39 +-
.../internals/OffsetsForLeaderEpochUtils.java | 2 +-
.../consumer/internals/OffsetsRequestManager.java | 18 +-
.../internals/ShareConsumeRequestManager.java | 19 +-
.../consumer/internals/SubscriptionState.java | 2 +-
.../internals/events/ApplicationEvent.java | 1 +
.../events/ApplicationEventProcessor.java | 118 ++-
.../internals/events/CurrentLagEvent.java} | 33 +-
...OffsetsEvent.java => PausePartitionsEvent.java} | 20 +-
...ChangeEvent.java => ResumePartitionsEvent.java} | 21 +-
.../kafka/clients/producer/KafkaProducer.java | 10 +-
.../kafka/clients/producer/internals/Sender.java | 11 +-
.../producer/internals/TransactionManager.java | 55 +-
.../apache/kafka/common/config/TopicConfig.java | 17 -
.../requests/ConsumerGroupHeartbeatRequest.java | 8 +
.../common/requests/DescribeGroupsResponse.java | 8 +
.../kafka/common/requests/ProduceRequest.java | 13 +-
.../common/requests/TxnOffsetCommitRequest.java | 33 +-
.../apache/kafka/server/authorizer/Authorizer.java | 12 +-
.../message/ConsumerGroupDescribeRequest.json | 4 +-
.../message/ConsumerGroupDescribeResponse.json | 7 +-
.../common/message/DescribeGroupsRequest.json | 6 +-
.../common/message/DescribeGroupsResponse.json | 6 +-
.../resources/common/message/ProduceRequest.json | 7 +-
.../resources/common/message/ProduceResponse.json | 4 +-
.../common/message/TxnOffsetCommitRequest.json | 7 +-
.../common/message/TxnOffsetCommitResponse.json | 4 +-
.../apache/kafka/clients/NetworkClientTest.java | 4 +-
.../kafka/clients/admin/KafkaAdminClientTest.java | 195 +++-
.../kafka/clients/admin/MockAdminClient.java | 6 -
.../ListConsumerGroupOffsetsHandlerTest.java | 20 +-
.../kafka/clients/consumer/ConsumerConfigTest.java | 19 +
.../kafka/clients/consumer/KafkaConsumerTest.java | 23 +-
.../kafka/clients/consumer/MockConsumerTest.java | 22 +
.../consumer/internals/AsyncKafkaConsumerTest.java | 85 +-
.../internals/AutoOffsetResetStrategyTest.java | 83 +-
.../ConsumerHeartbeatRequestManagerTest.java | 69 +-
.../internals/ConsumerNetworkClientTest.java | 33 +-
.../consumer/internals/ConsumerProtocolTest.java | 4 +-
.../consumer/internals/OffsetFetcherTest.java | 23 +
.../internals/ShareConsumeRequestManagerTest.java | 34 +
.../events/ApplicationEventProcessorTest.java | 25 +
.../kafka/clients/producer/KafkaProducerTest.java | 134 ++-
.../producer/internals/RecordAccumulatorTest.java | 2 +-
.../clients/producer/internals/SenderTest.java | 2 +-
.../producer/internals/TransactionManagerTest.java | 259 ++++--
.../apache/kafka/common/network/SelectorTest.java | 4 +-
.../common/requests/OffsetFetchResponseTest.java | 20 +-
.../kafka/common/requests/ProduceRequestTest.java | 220 ++---
.../kafka/common/requests/RequestResponseTest.java | 31 +-
.../requests/TxnOffsetCommitRequestTest.java | 24 +-
.../org/apache/kafka/connect/sink/SinkTask.java | 16 -
.../connect/mirror/DefaultReplicationPolicy.java | 2 +-
.../kafka/connect/mirror/ReplicationPolicy.java | 5 +-
.../connect/mirror/ReplicationPolicyTest.java | 8 +-
.../kafka/connect/mirror/DefaultTopicFilter.java | 2 +-
.../kafka/connect/mirror/MirrorCheckpointTask.java | 11 +-
.../connect/mirror/MirrorSourceConnectorTest.java | 4 +-
.../FakeForwardingAdminWithLocalMetadata.java | 21 -
.../connect/integration/BlockingConnectorTest.java | 16 -
.../kafka/connect/runtime/AbstractHerderTest.java | 4 +-
.../transforms/predicates/HasHeaderKey.java | 5 +-
.../kafka/coordinator/common/runtime/TestUtil.java | 21 +
.../java/kafka/server/share/DelayedShareFetch.java | 13 +-
.../java/kafka/server/share/ShareFetchUtils.java | 29 +-
.../java/kafka/server/share/SharePartition.java | 242 +++--
.../kafka/server/share/SharePartitionManager.java | 165 +++-
.../src/main/scala/kafka/admin/ConfigCommand.scala | 77 +-
core/src/main/scala/kafka/cluster/Partition.scala | 14 +
.../group/CoordinatorPartitionWriter.scala | 4 +-
.../kafka/coordinator/group/GroupCoordinator.scala | 15 +-
.../group/GroupCoordinatorAdapter.scala | 3 +-
.../transaction/TransactionCoordinator.scala | 357 ++++++--
.../transaction/TransactionMetadata.scala | 28 +-
.../transaction/TransactionStateManager.scala | 15 +-
core/src/main/scala/kafka/log/UnifiedLog.scala | 9 +-
core/src/main/scala/kafka/raft/RaftManager.scala | 4 +-
.../kafka/server/AddPartitionsToTxnManager.scala | 35 +-
core/src/main/scala/kafka/server/KafkaApis.scala | 2 +-
core/src/main/scala/kafka/server/KafkaConfig.scala | 31 +-
.../main/scala/kafka/server/ReplicaManager.scala | 5 +-
core/src/main/scala/kafka/tools/StorageTool.scala | 12 +-
core/src/main/scala/kafka/utils/VersionInfo.scala | 40 -
.../ZooKeeperMainWithTlsSupportForKafka.scala | 100 ---
.../java/kafka/admin/AdminFenceProducersTest.java | 21 +-
.../test/java/kafka/admin/ClientTelemetryTest.java | 2 +-
.../kafka/admin/ConfigCommandIntegrationTest.java | 147 ++-
.../test/java/kafka/admin/ConfigCommandTest.java | 30 +-
.../admin/UserScramCredentialsCommandTest.java | 4 +-
.../AsyncKafkaConsumerIntegrationTest.java | 4 +-
.../BootstrapControllersIntegrationTest.java | 8 +-
.../kafka/server/share/DelayedShareFetchTest.java | 28 +-
.../kafka/server/share/ShareFetchUtilsTest.java | 74 +-
.../server/share/SharePartitionManagerTest.java | 99 +++
.../kafka/server/share/SharePartitionTest.java | 109 ++-
.../java/kafka/test/api/ShareConsumerTest.java | 70 +-
.../kafka/api/AbstractConsumerTest.scala | 20 +-
.../AdminClientWithPoliciesIntegrationTest.scala | 73 +-
.../kafka/api/AuthorizerIntegrationTest.scala | 23 +-
.../kafka/api/BaseAdminIntegrationTest.scala | 13 +-
.../integration/kafka/api/BaseConsumerTest.scala | 8 +-
.../integration/kafka/api/ConsumerBounceTest.scala | 57 +-
.../api/GroupCoordinatorIntegrationTest.scala | 17 +-
.../kafka/api/PlaintextAdminIntegrationTest.scala | 307 +++----
.../kafka/api/PlaintextConsumerFetchTest.scala | 48 +-
.../kafka/api/PlaintextConsumerPollTest.scala | 22 +-
.../api/PlaintextConsumerSubscriptionTest.scala | 51 +-
.../kafka/api/PlaintextConsumerTest.scala | 6 +-
.../kafka/api/PlaintextProducerSendTest.scala | 4 -
.../kafka/api/SaslSslAdminIntegrationTest.scala | 19 +-
.../integration/kafka/api/TransactionsTest.scala | 62 +-
.../server/DynamicBrokerReconfigurationTest.scala | 573 ++----------
.../kafka/server/KRaftClusterTest.scala | 78 --
.../test/scala/unit/kafka/KafkaConfigTest.scala | 178 +---
.../scala/unit/kafka/cluster/PartitionTest.scala | 11 +-
.../group/GroupCoordinatorAdapterTest.scala | 8 +-
.../coordinator/group/GroupCoordinatorTest.scala | 37 +-
.../transaction/TransactionCoordinatorTest.scala | 242 +++--
.../transaction/TransactionMetadataTest.scala | 127 ++-
.../transaction/TransactionStateManagerTest.scala | 59 ++
.../test/scala/unit/kafka/log/LogConfigTest.scala | 18 -
.../test/scala/unit/kafka/log/UnifiedLogTest.scala | 18 +-
.../unit/kafka/log/VerificationGuardTest.scala | 53 --
.../scala/unit/kafka/raft/RaftManagerTest.scala | 80 +-
.../server/AddPartitionsToTxnManagerTest.scala | 77 +-
.../kafka/server/BrokerLifecycleManagerTest.scala | 54 +-
.../server/BrokerRegistrationRequestTest.scala | 4 +-
.../server/ConsumerGroupDescribeRequestTest.scala | 122 ++-
.../server/ConsumerGroupHeartbeatRequestTest.scala | 59 +-
.../kafka/server/DeleteGroupsRequestTest.scala | 2 +
.../kafka/server/DescribeGroupsRequestTest.scala | 4 +-
.../kafka/server/DynamicConfigChangeTest.scala | 23 +-
.../server/GroupCoordinatorBaseRequestTest.scala | 155 +++-
.../scala/unit/kafka/server/KafkaApisTest.scala | 12 +-
.../scala/unit/kafka/server/KafkaConfigTest.scala | 4 -
.../unit/kafka/server/LeaveGroupRequestTest.scala | 68 +-
.../unit/kafka/server/ProduceRequestTest.scala | 28 +-
.../unit/kafka/server/ReplicaManagerTest.scala | 310 ++-----
.../unit/kafka/server/ReplicationQuotasTest.scala | 4 +-
.../scala/unit/kafka/server/RequestQuotaTest.scala | 3 +-
.../server/ShareFetchAcknowledgeRequestTest.scala | 59 +-
.../kafka/server/TxnOffsetCommitRequestTest.scala | 245 +++++
.../scala/unit/kafka/tools/StorageToolTest.scala | 12 +-
.../test/scala/unit/kafka/utils/TestUtils.scala | 34 +-
docs/configuration.html | 19 +-
docs/ops.html | 5 +-
docs/protocol.html | 15 +-
docs/upgrade.html | 38 +-
.../apache/kafka/message/checker/CheckerUtils.java | 16 +-
.../message/checker/MetadataSchemaCheckerTool.java | 13 +-
.../checker/MetadataSchemaCheckerToolTest.java | 7 +-
gradle.properties | 2 +-
gradle/dependencies.gradle | 5 +-
gradle/resources/dependencycheck-suppressions.xml | 11 -
.../group/api/assignor/SubscriptionType.java | 4 +-
.../coordinator/group/GroupCoordinatorConfig.java | 44 +-
.../coordinator/group/GroupCoordinatorShard.java | 19 +-
.../coordinator/group/GroupMetadataManager.java | 591 ++++++-------
.../coordinator/group/modern/ModernGroup.java | 38 +-
.../group/modern/SubscriptionCount.java | 101 +++
.../group/modern/consumer/ConsumerGroup.java | 205 ++++-
.../group/modern/consumer/ConsumerGroupMember.java | 11 +-
.../coordinator/group/modern/share/ShareGroup.java | 6 +-
.../coordinator/group/streams/StreamsGroup.java | 1 +
.../group/taskassignor/StickyTaskAssignor.java | 2 +-
.../apache/kafka/coordinator/group/Assertions.java | 33 +
.../group/GroupCoordinatorServiceTest.java | 7 +-
.../group/GroupMetadataManagerTest.java | 981 +++++++++++++--------
.../group/GroupMetadataManagerTestContext.java | 209 +++--
.../group/OffsetMetadataManagerTest.java | 3 +-
.../modern/consumer/ConsumerGroupMemberTest.java | 15 +-
.../group/modern/consumer/ConsumerGroupTest.java | 591 +++++++++++--
.../jmh/producer/ProducerRequestBenchmark.java | 2 +-
.../kafka/controller/ClusterControlManager.java | 9 +-
.../kafka/controller/FeatureControlManager.java | 6 +-
.../controller/PeriodicTaskControlManager.java | 2 +-
.../apache/kafka/controller/QuorumController.java | 20 +-
.../apache/kafka/controller/QuorumFeatures.java | 4 +-
.../controller/ReplicationControlManager.java | 16 +-
.../apache/kafka/metadata/storage/Formatter.java | 14 +-
.../controller/ClusterControlManagerTest.java | 32 +-
.../ConfigurationControlManagerTest.java | 8 +-
.../controller/FeatureControlManagerTest.java | 22 +-
.../kafka/controller/QuorumControllerTest.java | 110 ++-
.../kafka/controller/QuorumFeaturesTest.java | 10 +-
.../controller/ReplicationControlManagerTest.java | 32 +-
.../kafka/metadata/storage/FormatterTest.java | 6 +-
.../kafka/raft/KafkaRaftClientReconfigTest.java | 32 +-
.../org/apache/kafka/raft/QuorumStateTest.java | 4 +-
.../apache/kafka/raft/RaftClientTestContext.java | 4 +-
.../apache/kafka/raft/RaftEventSimulationTest.java | 4 +-
.../java/org/apache/kafka/raft/VoterSetTest.java | 4 +-
.../kafka/raft/internals/KafkaRaftMetricsTest.java | 4 +-
.../common/EligibleLeaderReplicasVersion.java | 2 +
.../org/apache/kafka/server/common/Feature.java | 329 +++++++
.../org/apache/kafka/server/common/Features.java | 181 ----
.../apache/kafka/server/common/GroupVersion.java | 2 +
.../apache/kafka/server/common/KRaftVersion.java | 2 +
.../kafka/server/common/TestFeatureVersion.java | 5 +-
.../kafka/server/common/TransactionVersion.java | 4 +-
.../server/common/UnitTestFeatureVersion.java | 361 ++++++++
.../kafka/server/config/ServerLogConfigs.java | 13 -
.../server/config/ServerTopicConfigSynonyms.java | 1 -
.../apache/kafka/server/common/FeatureTest.java | 293 ++++++
.../apache/kafka/server/common/FeaturesTest.java | 146 ---
.../apache/kafka/network/SocketServerConfigs.java | 6 +-
.../org/apache/kafka/server/BrokerFeatures.java | 2 +-
.../kafka/server/AssignmentsManagerTest.java | 10 +-
.../apache/kafka/server/BrokerFeaturesTest.java | 6 +-
settings.gradle | 10 +-
.../share/persister/DefaultStatePersister.java | 24 +-
.../kafka/server/share/persister/Persister.java | 10 +-
.../share/persister/DefaultStatePersisterTest.java | 203 ++---
.../kafka/storage/internals/log/LogConfig.java | 42 +-
.../kafka/storage/internals/log/LogSegment.java | 4 +-
.../storage/internals/log/LogValidatorTest.java | 26 +-
.../internals/log/VerificationGuardTest.java | 53 ++
.../OffloadAndTxnConsumeFromLeaderTest.java | 8 +-
.../examples/pageview/PageViewTypedDemo.java | 12 +-
...ighAvailabilityTaskAssignorIntegrationTest.java | 14 +-
.../integration/QueryableStateIntegrationTest.java | 9 +-
.../kafka/streams/integration/StoreQuerySuite.java | 16 +-
.../TestingMetricsInterceptingAdminClient.java | 7 -
.../integration/utils/IntegrationTestUtils.java | 5 +-
.../org/apache/kafka/streams/kstream/KTable.java | 175 ++++
.../internals/CogroupedStreamAggregateBuilder.java | 30 +-
.../internals/GroupedStreamAggregateBuilder.java | 6 +-
.../kstream/internals/KGroupedStreamImpl.java | 31 +-
.../kstream/internals/KGroupedTableImpl.java | 8 +-
.../kstream/internals/KStreamAggregate.java | 17 +-
.../streams/kstream/internals/KStreamImpl.java | 18 +-
.../streams/kstream/internals/KStreamImplJoin.java | 18 +-
.../kstream/internals/KStreamKTableJoin.java | 21 +-
.../streams/kstream/internals/KStreamReduce.java | 18 +-
.../internals/KStreamSessionWindowAggregate.java | 16 +-
.../internals/KStreamSlidingWindowAggregate.java | 15 +-
.../kstream/internals/KStreamWindowAggregate.java | 16 +-
.../streams/kstream/internals/KTableAggregate.java | 19 +-
.../streams/kstream/internals/KTableImpl.java | 141 ++-
.../streams/kstream/internals/KTableReduce.java | 21 +-
.../internals/KeyValueStoreMaterializer.java | 5 +-
.../internals/MaterializedStoreFactory.java | 20 +-
.../internals/OuterStreamJoinStoreFactory.java | 7 +-
.../internals/SessionStoreMaterializer.java | 5 +-
.../internals/SessionWindowedKStreamImpl.java | 18 +-
.../internals/SlidingWindowStoreMaterializer.java | 5 +-
.../internals/SlidingWindowedKStreamImpl.java | 16 +-
.../internals/StreamJoinedStoreFactory.java | 7 +-
.../kstream/internals/StreamStreamJoinUtil.java | 2 +-
.../internals/SubscriptionStoreFactory.java | 7 +-
.../kstream/internals/TimeWindowedKStreamImpl.java | 16 +-
.../kstream/internals/WindowStoreMaterializer.java | 5 +-
.../foreignkeyjoin/ForeignKeyExtractor.java | 48 +
.../SubscriptionSendProcessorSupplier.java | 17 +-
.../kstream/internals/graph/StateStoreNode.java | 4 +-
.../internals/graph/StreamTableJoinNode.java | 12 +-
.../internals/graph/TableProcessorNode.java | 2 +-
.../internals/InternalTopologyBuilder.java | 31 +-
.../processor/internals/StoreBuilderWrapper.java | 7 +-
.../streams/processor/internals/StoreFactory.java | 8 +-
.../apache/kafka/streams/StreamsBuilderTest.java | 383 +++++++-
.../org/apache/kafka/streams/TopologyTest.java | 9 +-
...KStreamSessionWindowAggregateProcessorTest.java | 7 +-
.../internals/KStreamWindowAggregateTest.java | 15 +-
.../KTableKTableForeignKeyJoinScenarioTest.java | 132 +++
.../kstream/internals/KTableReduceTest.java | 3 +-
.../SubscriptionSendProcessorSupplierTest.java | 304 ++++++-
.../internals/graph/GraphGraceSearchUtilTest.java | 13 +-
.../internals/InternalTopologyBuilderTest.java | 14 +-
.../internals/KeyValueStoreMaterializerTest.java | 4 +-
.../streams/processor/internals/TaskSuite.java | 14 +-
.../streams/state/internals/RocksDBStoreTest.java | 6 +-
.../org/apache/kafka/streams/utils/TestUtils.java | 142 ++-
.../kafka/streams/scala/kstream/KTable.scala | 87 ++
.../kafka/streams/scala/kstream/KTableTest.scala | 80 ++
.../kafka/common/test/KafkaClusterTestKit.java | 2 +-
.../kafka/common/test/api/ClusterConfig.java | 12 +-
.../kafka/common/test/api/ClusterFeature.java | 4 +-
.../common/test/api/ClusterTestExtensions.java | 4 +-
.../test/api/RaftClusterInvocationContext.java | 16 +-
.../common/test/api/ClusterTestExtensionsTest.java | 4 +-
tests/README.md | 2 +-
tests/docker/Dockerfile | 4 +
.../services/templates/connect_log4j.properties | 7 +
.../templates/connect-distributed.properties | 5 -
tests/kafkatest/tests/core/downgrade_test.py | 170 ----
tests/setup.cfg | 2 +-
tests/setup.py | 12 +-
...c.json => simple_share_consume_bench_spec.json} | 4 +-
tests/unit/setup.cfg | 2 +-
.../org/apache/kafka/tools/FeatureCommand.java | 20 +-
.../java/org/apache/kafka/tools/GroupsCommand.java | 8 +-
.../org/apache/kafka/tools/StreamsResetter.java | 24 +-
.../java/org/apache/kafka/tools/ToolsUtils.java | 2 +-
.../tools/consumer/group/ConsumerGroupCommand.java | 105 ++-
.../group/ConsumerGroupCommandOptions.java | 14 +-
.../tools/consumer/group/ShareGroupCommand.java | 19 +-
.../kafka/tools/BrokerApiVersionsCommandTest.java | 2 +-
.../org/apache/kafka/tools/FeatureCommandTest.java | 12 +-
.../kafka/tools/MetadataQuorumCommandTest.java | 8 +-
.../consumer/group/AuthorizerIntegrationTest.java | 14 +-
.../consumer/group/ConsumerGroupCommandTest.java | 57 ++
.../group/ConsumerGroupCommandTestUtils.java | 6 +-
.../consumer/group/DeleteConsumerGroupsTest.java | 9 +-
...OffsetsConsumerGroupCommandIntegrationTest.java | 4 +-
.../consumer/group/DescribeConsumerGroupTest.java | 43 +-
.../consumer/group/ListConsumerGroupTest.java | 4 +-
.../group/ResetConsumerGroupOffsetTest.java | 8 +-
.../consumer/group/ShareGroupCommandTest.java | 15 +-
.../reassign/ReassignPartitionsCommandTest.java | 32 +-
.../org/apache/kafka/trogdor/fault/Kibosh.java | 4 +-
.../org/apache/kafka/trogdor/rest/TaskState.java | 10 +-
.../kafka/trogdor/workload/RecordProcessor.java | 2 +-
...meBenchSpec.java => ShareConsumeBenchSpec.java} | 88 +-
...nchWorker.java => ShareConsumeBenchWorker.java} | 171 ++--
.../workload/ShareConsumeBenchSpecTest.java | 60 ++
343 files changed, 10512 insertions(+), 5530 deletions(-)
copy
clients/src/main/java/org/apache/kafka/clients/admin/{MemberAssignment.java =>
ShareMemberAssignment.java} (85%)
copy
clients/src/main/java/org/apache/kafka/clients/admin/{MemberDescription.java =>
ShareMemberDescription.java} (50%)
copy
clients/src/main/java/org/apache/kafka/clients/{admin/ListOffsetsOptions.java
=> consumer/internals/events/CurrentLagEvent.java} (55%)
copy
clients/src/main/java/org/apache/kafka/clients/consumer/internals/events/{FetchCommittedOffsetsEvent.java
=> PausePartitionsEvent.java} (64%)
copy
clients/src/main/java/org/apache/kafka/clients/consumer/internals/events/{AssignmentChangeEvent.java
=> ResumePartitionsEvent.java} (64%)
delete mode 100644 core/src/main/scala/kafka/utils/VersionInfo.scala
delete mode 100644
core/src/main/scala/org/apache/zookeeper/ZooKeeperMainWithTlsSupportForKafka.scala
delete mode 100644
core/src/test/scala/unit/kafka/log/VerificationGuardTest.scala
create mode 100644
core/src/test/scala/unit/kafka/server/TxnOffsetCommitRequestTest.scala
create mode 100644
group-coordinator/src/main/java/org/apache/kafka/coordinator/group/modern/SubscriptionCount.java
create mode 100644
server-common/src/main/java/org/apache/kafka/server/common/Feature.java
delete mode 100644
server-common/src/main/java/org/apache/kafka/server/common/Features.java
create mode 100644
server-common/src/main/java/org/apache/kafka/server/common/UnitTestFeatureVersion.java
create mode 100644
server-common/src/test/java/org/apache/kafka/server/common/FeatureTest.java
delete mode 100644
server-common/src/test/java/org/apache/kafka/server/common/FeaturesTest.java
create mode 100644
storage/src/test/java/org/apache/kafka/storage/internals/log/VerificationGuardTest.java
create mode 100644
streams/src/main/java/org/apache/kafka/streams/kstream/internals/foreignkeyjoin/ForeignKeyExtractor.java
delete mode 100644 tests/kafkatest/tests/core/downgrade_test.py
copy tests/spec/{simple_consume_bench_spec.json =>
simple_share_consume_bench_spec.json} (92%)
create mode 100644
tools/src/test/java/org/apache/kafka/tools/consumer/group/ConsumerGroupCommandTest.java
copy
trogdor/src/main/java/org/apache/kafka/trogdor/workload/{ConsumeBenchSpec.java
=> ShareConsumeBenchSpec.java} (66%)
copy
trogdor/src/main/java/org/apache/kafka/trogdor/workload/{ConsumeBenchWorker.java
=> ShareConsumeBenchWorker.java} (69%)
create mode 100644
trogdor/src/test/java/org/apache/kafka/trogdor/workload/ShareConsumeBenchSpecTest.java