Fix Broken null-check for client.id

Adding the group broke the client.id logic when no client.id configured.

`EnableKafkaIntegrationTests`...

13:51:01.196 WARN  [main][org.apache.kafka.common.utils.AppInfoParser] Error registering AppInfo mbean
javax.management.InstanceAlreadyExistsException: kafka.consumer:type=app-info,id=null-0
This commit is contained in:
Gary Russell
2017-06-01 13:52:23 -04:00
parent 165dfc6691
commit be46282349

View File

@@ -98,7 +98,9 @@ public class DefaultKafkaConsumerFactory<K, V> implements ConsumerFactory<K, V>
}
protected KafkaConsumer<K, V> createKafkaConsumer(String groupId, String clientIdSuffix) {
if (groupId == null && (!this.configs.containsKey(ConsumerConfig.CLIENT_ID_CONFIG) || clientIdSuffix == null)) {
boolean shouldModifyClientId = this.configs.containsKey(ConsumerConfig.CLIENT_ID_CONFIG)
&& clientIdSuffix != null;
if (groupId == null && !shouldModifyClientId) {
return createKafkaConsumer();
}
else {
@@ -106,7 +108,7 @@ public class DefaultKafkaConsumerFactory<K, V> implements ConsumerFactory<K, V>
if (groupId != null) {
modifiedConfigs.put(ConsumerConfig.GROUP_ID_CONFIG, groupId);
}
if (clientIdSuffix != null) {
if (shouldModifyClientId) {
modifiedConfigs.put(ConsumerConfig.CLIENT_ID_CONFIG,
modifiedConfigs.get(ConsumerConfig.CLIENT_ID_CONFIG) + clientIdSuffix);
}