You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Ashish Kumar Singh (JIRA)" <ji...@apache.org> on 2014/12/11 20:48:13 UTC

[jira] [Commented] (KAFKA-1664) Kafka does not properly parse multiple ZK nodes with non-root chroot

    [ https://issues.apache.org/jira/browse/KAFKA-1664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14243024#comment-14243024 ] 

Ashish Kumar Singh commented on KAFKA-1664:
-------------------------------------------

[~nehanarkhede] Addressed your review comment. Kindly take a look.

> Kafka does not properly parse multiple ZK nodes with non-root chroot
> --------------------------------------------------------------------
>
>                 Key: KAFKA-1664
>                 URL: https://issues.apache.org/jira/browse/KAFKA-1664
>             Project: Kafka
>          Issue Type: Bug
>          Components: clients
>            Reporter: Ricky Saltzer
>            Assignee: Ashish Kumar Singh
>            Priority: Minor
>              Labels: newbie
>         Attachments: KAFKA-1664.1.patch, KAFKA-1664.2.patch, KAFKA-1664.patch
>
>
> When using a non-root ZK directory for Kafka, if you specify multiple ZK servers, Kafka does not seem to properly parse the connection string. 
> *Error*
> {code}
> [root@hodor-001 bin]# ./kafka-console-consumer.sh --zookeeper baelish-001.edh.cloudera.com:2181/kafka,baelish-002.edh.cloudera.com:2181/kafka,baelish-003.edh.cloudera.com:2181/kafka --topic test-topic
> [2014-10-01 15:31:04,629] ERROR Error processing message, stopping consumer:  (kafka.consumer.ConsoleConsumer$)
> java.lang.IllegalArgumentException: Path length must be > 0
> 	at org.apache.zookeeper.common.PathUtils.validatePath(PathUtils.java:48)
> 	at org.apache.zookeeper.common.PathUtils.validatePath(PathUtils.java:35)
> 	at org.apache.zookeeper.ZooKeeper.create(ZooKeeper.java:766)
> 	at org.I0Itec.zkclient.ZkConnection.create(ZkConnection.java:87)
> 	at org.I0Itec.zkclient.ZkClient$1.call(ZkClient.java:308)
> 	at org.I0Itec.zkclient.ZkClient$1.call(ZkClient.java:304)
> 	at org.I0Itec.zkclient.ZkClient.retryUntilConnected(ZkClient.java:675)
> 	at org.I0Itec.zkclient.ZkClient.create(ZkClient.java:304)
> 	at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:213)
> 	at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:223)
> 	at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:223)
> 	at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:223)
> 	at kafka.utils.ZkUtils$.createParentPath(ZkUtils.scala:245)
> 	at kafka.utils.ZkUtils$.createEphemeralPath(ZkUtils.scala:256)
> 	at kafka.utils.ZkUtils$.createEphemeralPathExpectConflict(ZkUtils.scala:268)
> 	at kafka.utils.ZkUtils$.createEphemeralPathExpectConflictHandleZKBug(ZkUtils.scala:306)
> 	at kafka.consumer.ZookeeperConsumerConnector.kafka$consumer$ZookeeperConsumerConnector$$registerConsumerInZK(ZookeeperConsumerConnector.scala:226)
> 	at kafka.consumer.ZookeeperConsumerConnector$WildcardStreamsHandler.<init>(ZookeeperConsumerConnector.scala:755)
> 	at kafka.consumer.ZookeeperConsumerConnector.createMessageStreamsByFilter(ZookeeperConsumerConnector.scala:145)
> 	at kafka.consumer.ConsoleConsumer$.main(ConsoleConsumer.scala:196)
> 	at kafka.consumer.ConsoleConsumer.main(ConsoleConsumer.scala)
> {code}
> *Working*
> {code}
> [root@hodor-001 bin]# ./kafka-console-consumer.sh --zookeeper baelish-001.edh.cloudera.com:2181/kafka --topic test-topic
> {code}



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