Hello, Tried, still the same...
bin/zkCli.sh -server zookeeper1:2181,zookeeper2:2181,zookeeper3:2181 [zk: zookeeper1,zookeeper2,zookeeper3(CONNECTED) 0] ls / [testkafka, consumers, brokers, zookeeper] [zk: zookeeper1,zookeeper2,zookeeper3(CONNECTED) 1] rmr /testkafka [zk: zookeeper1,zookeeper2,zookeeper3(CONNECTED) 2] create /testkafka '' [zk: zookeeper1,zookeeper2,zookeeper3(CONNECTED) 3] ls / [testkafka, consumers, brokers, zookeeper] And restart Kafka [2013-04-20 09:20:58,336] FATAL Fatal error during KafkaServerStable startup. Prepare to shutdown (kafka.server.KafkaServerStartable) 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:626) 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:47) at kafka.utils.ZkUtils$.createEphemeralPath(ZkUtils.scala:59) at kafka.utils.ZkUtils$.createEphemeralPathExpectConflict(ZkUtils.scala:71) at kafka.server.KafkaZooKeeper.registerBrokerInZk(KafkaZooKeeper.scala:54) at kafka.log.LogManager.startup(LogManager.scala:130) at kafka.server.KafkaServer.startup(KafkaServer.scala:81) at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:34) at kafka.Kafka$.main(Kafka.scala:47) at kafka.Kafka.main(Kafka.scala) Maybe I should report a bug? (I posted here first just to know if I have done sth stupid) On Sat, Apr 20, 2013 at 1:02 PM, Neha Narkhede <neha.narkh...@gmail.com>wrote: > Hmm, so if you use all 3 zookeeper servers will creating and reading > the node, do you still see the problem ? > > zkCli.sh -server zookeeper1:2181,zookeeper2:2181,zookeeper3:2181 > create /testkafka > ls / > > Thanks > Neha > > On Fri, Apr 19, 2013 at 8:55 PM, Ryan Chan <ryanchan...@gmail.com> wrote: > > Hi, > > > > Actually I followed the above link to setup my zookeeper1 to zookeeper3. > > > > They are in the same quorum, as you can see in my above example that > when I > > created the /testkafka path in zookeeper1, I can see list it in > zookeeper2 > > > > Thanks > > > > > > On Sat, Apr 20, 2013 at 12:08 AM, Neha Narkhede <neha.narkh...@gmail.com > >wrote: > > > >> I'm pretty sure the issue is that those 3 zookeepers are not part of > >> the same quorum. Try following the quickstart for starting up a local > >> zookeeper instance or follow > >> > >> > http://zookeeper.apache.org/doc/r3.3.3/zookeeperAdmin.html#sc_zkMulitServerSetup > >> for a zookeeper cluster setup. > >> > >> Thanks, > >> Neha > >> > >> On Thu, Apr 18, 2013 at 10:50 PM, Jonathan Creasy <j...@box.com> wrote: > >> > I made the patch to create the chroot and it doesn't handle multiple > zk > >> > addresses. > >> > > >> > We fixed it but I guess that patch didn't get submitted. I will make a > >> > ticket here to get that done. > >> > On Apr 18, 2013 10:47 PM, "Ryan Chan" <ryanchan...@gmail.com> wrote: > >> > > >> >> Yes, using the latest Kafka 0.7.2, just tried to reproduce again > >> >> > >> >> 1. Install a single node Kafka, three nodes zookeeper instances > >> >> > >> >> kafka1 > >> >> zookeeper1 > >> >> zookeeper2 > >> >> zookeeper3 > >> >> > >> >> 2. Using a simple Kafka config, able to start without error in the > log > >> >> > >> >> brokerid=1 > >> >> log.dir=/data/kafka > >> >> zk.connect=zookeeper1:2181,zookeeper2:2181,zookeeper3:2181 > >> >> > >> >> 3. Now, create a path in zookeeper1 > >> >> > >> >> zkCli.sh -server zookeeper1:2181 > >> >> > >> >> ls / > >> >> [consumers, brokers, zookeeper] > >> >> create /testkafka '' > >> >> ls / > >> >> [testkafka, consumers, brokers, zookeeper] > >> >> > >> >> Quit & Done. > >> >> > >> >> 4. Verify from zookeeper2 > >> >> > >> >> zkCli.sh -server zookeeper2:2181 > >> >> ls / > >> >> [testkafka, consumers, brokers, zookeeper] > >> >> > >> >> Seems ok > >> >> > >> >> 4. Update kafka config and restart > >> >> > >> >> > >> >> > >> >> > >> > zk.connect=zookeeper1:2181/testkafka,zookeeper2:2181/testkafka,zookeeper3:2181/testkafka > >> >> > >> >> Restart and have the error > >> >> > >> >> [2013-04-19 05:35:14,846] FATAL Fatal error during KafkaServerStable > >> >> startup. Prepare to shutdown (kafka.server.KafkaServerStartable) > >> >> 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) > >> >> .. > >> >> > >> >> > >> >> Any idea? > >> >> > >> >> > >> >> > >> >> > >> >> On Fri, Apr 19, 2013 at 5:32 AM, Neha Narkhede < > neha.narkh...@gmail.com > >> >> >wrote: > >> >> > >> >> > That is odd. Is it reproducible ? > >> >> > > >> >> > On Wed, Apr 17, 2013 at 8:03 PM, Ryan Chan <ryanchan...@gmail.com> > >> >> wrote: > >> >> > > Hi, > >> >> > > > >> >> > > Yes, I can see the new path exists by using the command "ls /" > >> >> > > > >> >> > > > >> >> > > > >> >> > > On Thu, Apr 18, 2013 at 1:29 AM, Neha Narkhede < > >> >> neha.narkh...@gmail.com > >> >> > >wrote: > >> >> > > > >> >> > >> After creating the path, did you get a chance to confirm that it > >> got > >> >> > >> created correctly ? > >> >> > >> > >> >> > >> Thanks, > >> >> > >> Neha > >> >> > >> > >> >> > >> On Wed, Apr 17, 2013 at 9:30 AM, Ryan Chan < > ryanchan...@gmail.com> > >> >> > wrote: > >> >> > >> > Sorry as I am new to Kafka/ZK, but the instruction seems not > >> clear.. > >> >> > >> > > >> >> > >> > In the config, it was said that we can use a chroot-ed ZK ( > >> >> > >> > http://kafka.apache.org/configuration.html), e.g. > >> >> > localhost:2181/kafka > >> >> > >> > > >> >> > >> > But when I start the Kafka using the setting, it was showing.. > >> >> > >> > > >> >> > >> > 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:626) > >> >> > >> > 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:47) > >> >> > >> > at kafka.utils.ZkUtils$.createEphemeralPath(ZkUtils.scala:59) > >> >> > >> > at > >> >> > >> > >> >> > kafka.utils.ZkUtils$.createEphemeralPathExpectConflict(ZkUtils.scala:71) > >> >> > >> > at > >> >> > >> > >> >> > kafka.server.KafkaZooKeeper.registerBrokerInZk(KafkaZooKeeper.scala:54) > >> >> > >> > at kafka.log.LogManager.startup(LogManager.scala:130) > >> >> > >> > at kafka.server.KafkaServer.startup(KafkaServer.scala:81) > >> >> > >> > at > >> >> > >> > >> >> > kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:34) > >> >> > >> > at kafka.Kafka$.main(Kafka.scala:47) > >> >> > >> > at kafka.Kafka.main(Kafka.scala) > >> >> > >> > > >> >> > >> > In an old post ( > >> >> > >> > > >> >> > >> > >> >> > > >> >> > >> > http://mail-archives.apache.org/mod_mbox/incubator-kafka-users/201205.mbox/%3CCAK152briB=m-oaeaqtcz+cvzjovywbhomx8tubywqguox_y...@mail.gmail.com%3E > >> >> > >> ) > >> >> > >> > it was saying I need to create the path first, so I use > zkCli.sh > >> to > >> >> > >> connect > >> >> > >> > to the ZK, and run the command > >> >> > >> > > >> >> > >> >>> create /kafka '' > >> >> > >> > > >> >> > >> > I restarted the Kafka and still the same error, any idea? > >> >> > >> > > >> >> > >> > Thanks. > >> >> > >> > >> >> > > >> >> > >> >