From 5480d54d185e236bffe003c88afa84b924d816b8 Mon Sep 17 00:00:00 2001 From: Andrew Schofield Date: Tue, 26 Nov 2024 04:45:43 +0000 Subject: [PATCH] KAFKA-17544: Add log message for early access use of KafkaShareConsumer (#17940) When a KafkaShareConsumer is constructed in AK 4.0, a log message is written warning about the early access nature of the feature. Reviewers: Manikumar Reddy --- .../consumer/internals/ShareConsumerDelegateCreator.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/clients/src/main/java/org/apache/kafka/clients/consumer/internals/ShareConsumerDelegateCreator.java b/clients/src/main/java/org/apache/kafka/clients/consumer/internals/ShareConsumerDelegateCreator.java index aeaaec7add70c..625f6abf0cd38 100644 --- a/clients/src/main/java/org/apache/kafka/clients/consumer/internals/ShareConsumerDelegateCreator.java +++ b/clients/src/main/java/org/apache/kafka/clients/consumer/internals/ShareConsumerDelegateCreator.java @@ -25,6 +25,8 @@ import org.apache.kafka.common.utils.LogContext; import org.apache.kafka.common.utils.Time; +import org.slf4j.Logger; + /** * {@code ShareConsumerDelegateCreator} implements a quasi-factory pattern to allow the caller to remain unaware of the * underlying {@link ShareConsumer} implementation that is created. This provides the means by which @@ -41,6 +43,9 @@ public ShareConsumerDelegate create(final ConsumerConfig config, final Deserializer keyDeserializer, final Deserializer valueDeserializer) { try { + LogContext logContext = new LogContext(); + Logger log = logContext.logger(getClass()); + log.warn("Share groups and KafkaShareConsumer are part of the early access of KIP-932 and MUST NOT be used in production."); return new ShareConsumerImpl<>(config, keyDeserializer, valueDeserializer); } catch (KafkaException e) { throw e; @@ -60,6 +65,8 @@ public ShareConsumerDelegate create(final LogContext logContext, final SubscriptionState subscriptions, final ConsumerMetadata metadata) { try { + Logger log = logContext.logger(getClass()); + log.warn("Share groups and KafkaShareConsumer are part of the early access of KIP-932 and MUST NOT be used in production."); return new ShareConsumerImpl<>( logContext, clientId,