Jason Whaley created KAFKA-2184:
-----------------------------------

             Summary: ConsumerConfig does not honor default java.util.Properties
                 Key: KAFKA-2184
                 URL: https://issues.apache.org/jira/browse/KAFKA-2184
             Project: Kafka
          Issue Type: Bug
          Components: consumer
    Affects Versions: 0.8.2.0
            Reporter: Jason Whaley
            Assignee: Neha Narkhede
            Priority: Minor


When creating a ConsumerConfig from java.util.Properties, an 
IllegalArgumentException is thrown when the Properties instance is converted to 
a VerifiableProperties instance.  To reproduce:

{code}
package com.test;

import kafka.consumer.ConsumerConfig;

import java.util.Properties;

public class ContainsKeyTest {
    public static void main(String[] args) {
        Properties defaultProperties = new Properties();
        defaultProperties.put("zookeeper.connect", "192.168.50.4:2181");
        defaultProperties.put("zookeeper.session.timeout.ms", "400");
        defaultProperties.put("zookeeper.sync.time.ms", "200");
        defaultProperties.put("auto.commit.interval.ms", "1000");
        defaultProperties.put("group.id", "consumerGroup");

        Properties props = new Properties(defaultProperties);

        //prints 192.168.50.4:2181
        System.out.println(props.getProperty("zookeeper.connect"));  

        //throws java.lang.IllegalArgumentException: requirement failed: 
Missing required property 'zookeeper.connect'
        ConsumerConfig config = new ConsumerConfig(props); 
    }
}
{code}

This is easy enough to work around, but default Properties should be honored by 
not calling containsKey inside of kafka.utils.VerifiableProperties#getString 
method




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to