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

ASF GitHub Bot commented on KAFKA-294:
--------------------------------------

Github user fsaintjacques closed the pull request at:

    https://github.com/apache/kafka/pull/2


> "Path length must be > 0" error during startup
> ----------------------------------------------
>
>                 Key: KAFKA-294
>                 URL: https://issues.apache.org/jira/browse/KAFKA-294
>             Project: Kafka
>          Issue Type: Bug
>            Reporter: Thomas Dudziak
>             Fix For: 0.8.2.0
>
>
> When starting Kafka 0.7.0 using zkclient-0.1.jar, I get this error:
> INFO 2012-03-06 02:39:04,072  main kafka.server.KafkaZooKeeper Registering 
> broker /brokers/ids/1
> FATAL 2012-03-06 02:39:04,111  main kafka.server.KafkaServer Fatal error 
> during startup.
> 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:620)
>         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 kafka.utils.ZkUtils$.createParentPath(ZkUtils.scala:48)
>         at kafka.utils.ZkUtils$.createEphemeralPath(ZkUtils.scala:60)
>         at 
> kafka.utils.ZkUtils$.createEphemeralPathExpectConflict(ZkUtils.scala:72)
>         at 
> kafka.server.KafkaZooKeeper.registerBrokerInZk(KafkaZooKeeper.scala:57)
>         at kafka.log.LogManager.startup(LogManager.scala:124)
>         at kafka.server.KafkaServer.startup(KafkaServer.scala:80)
>         at 
> kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:47)
>         at kafka.Kafka$.main(Kafka.scala:60)
>         at kafka.Kafka.main(Kafka.scala)
> The problem seems to be this code in ZkClient's createPersistent method:
> String parentDir = path.substring(0, path.lastIndexOf('/'));
> createPersistent(parentDir, createParents);
> createPersistent(path, createParents);
> which doesn't check for whether parentDir is an empty string, which it will 
> become for /brokers/ids/1 after two recursions.



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

Reply via email to