Repository: kafka Updated Branches: refs/heads/trunk 5b682baad -> 9260e8563
KAFKA-4806; Prevent double logging of ConsumerConfig The consumer properties get logged twice since two instances of ConsumerConfig are created during creation of KafkaConsumer. I added a constructor of ConsumerConfig accepting the boolean parameter doLog which is already passable in AbstractConfig and set it to false during the second ConsumerConfig creating in the KafkaConsumer constructor. Author: Marco Ebert <[email protected]> Reviewers: Ismael Juma <[email protected]> Closes #2600 from Gacko/trunk Project: http://git-wip-us.apache.org/repos/asf/kafka/repo Commit: http://git-wip-us.apache.org/repos/asf/kafka/commit/9260e856 Tree: http://git-wip-us.apache.org/repos/asf/kafka/tree/9260e856 Diff: http://git-wip-us.apache.org/repos/asf/kafka/diff/9260e856 Branch: refs/heads/trunk Commit: 9260e8563c19cc1c5ac2d47ad05955774138036d Parents: 5b682ba Author: Marco Ebert <[email protected]> Authored: Mon Feb 27 11:48:50 2017 +0000 Committer: Ismael Juma <[email protected]> Committed: Mon Feb 27 11:48:55 2017 +0000 ---------------------------------------------------------------------- .../java/org/apache/kafka/clients/consumer/ConsumerConfig.java | 4 ++++ .../java/org/apache/kafka/clients/consumer/KafkaConsumer.java | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kafka/blob/9260e856/clients/src/main/java/org/apache/kafka/clients/consumer/ConsumerConfig.java ---------------------------------------------------------------------- diff --git a/clients/src/main/java/org/apache/kafka/clients/consumer/ConsumerConfig.java b/clients/src/main/java/org/apache/kafka/clients/consumer/ConsumerConfig.java index ed809a9..1b33517 100644 --- a/clients/src/main/java/org/apache/kafka/clients/consumer/ConsumerConfig.java +++ b/clients/src/main/java/org/apache/kafka/clients/consumer/ConsumerConfig.java @@ -426,6 +426,10 @@ public class ConsumerConfig extends AbstractConfig { super(CONFIG, props); } + ConsumerConfig(Map<?, ?> props, boolean doLog) { + super(CONFIG, props, doLog); + } + public static Set<String> configNames() { return CONFIG.names(); } http://git-wip-us.apache.org/repos/asf/kafka/blob/9260e856/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaConsumer.java ---------------------------------------------------------------------- diff --git a/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaConsumer.java b/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaConsumer.java index 3a46bd7..a903036 100644 --- a/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaConsumer.java +++ b/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaConsumer.java @@ -630,7 +630,7 @@ public class KafkaConsumer<K, V> implements Consumer<K, V> { // load interceptors and make sure they get clientId Map<String, Object> userProvidedConfigs = config.originals(); userProvidedConfigs.put(ConsumerConfig.CLIENT_ID_CONFIG, clientId); - List<ConsumerInterceptor<K, V>> interceptorList = (List) (new ConsumerConfig(userProvidedConfigs)).getConfiguredInstances(ConsumerConfig.INTERCEPTOR_CLASSES_CONFIG, + List<ConsumerInterceptor<K, V>> interceptorList = (List) (new ConsumerConfig(userProvidedConfigs, false)).getConfiguredInstances(ConsumerConfig.INTERCEPTOR_CLASSES_CONFIG, ConsumerInterceptor.class); this.interceptors = interceptorList.isEmpty() ? null : new ConsumerInterceptors<>(interceptorList); if (keyDeserializer == null) {
