From f779eda3e4ae1ee013fccddb98e50413b4a021e8 Mon Sep 17 00:00:00 2001 From: Lucas Brutschy Date: Tue, 13 Sep 2022 22:02:19 +0200 Subject: [PATCH 1/8] KAFKA-12689: Remove exactly_once / exactly_once_beta Removes all code for handling the processing_guarantee settings exactly_once and exactly_once_beta, which have been deprecated since 3.0.0 and can be removed with the release of 4.0.0. Some tests were adapted to use exactly_once_v2 instead of exactly_once_beta or exactly_once, to retain the same coverage of the code bas. exactly_once / exactly_once_beta are rejected with an error message to upgrade to exactly_once_v2. EosV2UpgradeIntegrationTest is removed, since it cannot be implemented anymore with only one implementation available. --- .../apache/kafka/streams/StreamsConfig.java | 61 +- .../streams/internals/StreamsConfigUtils.java | 15 +- .../internals/ActiveTaskCreator.java | 112 +- .../processor/internals/ClientUtils.java | 16 - .../processor/internals/StreamThread.java | 7 +- .../processor/internals/StreamsProducer.java | 26 +- .../processor/internals/TaskExecutor.java | 96 +- .../processor/internals/TaskManager.java | 26 +- .../kafka/streams/StreamsConfigTest.java | 278 +--- .../EOSUncleanShutdownIntegrationTest.java | 17 +- .../integration/EosIntegrationTest.java | 2 - .../EosV2UpgradeIntegrationTest.java | 1213 ----------------- .../GlobalKTableEOSIntegrationTest.java | 16 +- ...ableSourceTopicRestartIntegrationTest.java | 11 - .../ResetPartitionTimeIntegrationTest.java | 2 - .../RocksDBMetricsIntegrationTest.java | 2 - .../StandbyTaskEOSIntegrationTest.java | 16 +- .../SuppressionDurabilityIntegrationTest.java | 2 - .../internals/ActiveTaskCreatorTest.java | 238 ---- .../internals/RecordCollectorTest.java | 6 - .../processor/internals/StandbyTaskTest.java | 31 - .../processor/internals/StreamTaskTest.java | 23 - .../processor/internals/StreamThreadTest.java | 38 - .../internals/StreamsProducerTest.java | 329 ++--- .../processor/internals/TaskManagerTest.java | 221 +-- .../state/KeyValueStoreTestDriver.java | 1 - .../StreamThreadStateStoreProviderTest.java | 1 - .../kafka/streams/tests/StreamsEosTest.java | 8 +- .../kafka/streams/tests/StreamsSmokeTest.java | 9 +- .../kafka/streams/TopologyTestDriver.java | 8 +- 30 files changed, 222 insertions(+), 2609 deletions(-) delete mode 100644 streams/src/test/java/org/apache/kafka/streams/integration/EosV2UpgradeIntegrationTest.java diff --git a/streams/src/main/java/org/apache/kafka/streams/StreamsConfig.java b/streams/src/main/java/org/apache/kafka/streams/StreamsConfig.java index 325cbec90d9d..a155ed79b8fb 100644 --- a/streams/src/main/java/org/apache/kafka/streams/StreamsConfig.java +++ b/streams/src/main/java/org/apache/kafka/streams/StreamsConfig.java @@ -129,8 +129,7 @@ * * * If {@link #PROCESSING_GUARANTEE_CONFIG "processing.guarantee"} is set to {@link #EXACTLY_ONCE_V2 "exactly_once_v2"}, - * {@link #EXACTLY_ONCE "exactly_once"} (deprecated), or {@link #EXACTLY_ONCE_BETA "exactly_once_beta"} (deprecated), Kafka Streams does not - * allow users to overwrite the following properties (Streams setting shown in parentheses): + * Kafka Streams does not allow users to overwrite the following properties (Streams setting shown in parentheses): *