Hi,

I have some problem to start a local broker from java unit tests in eclipse. My 
code is as follows:

@Test
public void test(){
                KafkaServer server;
                EmbeddedZookeeper zk;

                zk=new EmbeddedZookeeper("127.0.0.1:2181");
                Properties props=new Properties();
                props.put("broker.id", "0");
                props.put("zookeeper.connect", "127.0.01:2181");
                props.put("log.dirs", "logDir");
                KafkaConfig kafkaConfig = new KafkaConfig(props);
                server = kafka.utils.TestUtils.createServer(kafkaConfig, null);
                ...
                server.shutDown();
}

It seems that both the zookeeper and kafka broker are started correctly, 
because /brokers, /controller_epoch are created in zookeeper. But the broker 
keeps throwing the following exceptions:


13/09/17 14:32:01 ERROR server.ZookeeperLeaderElector: Error while electing or 
becoming leader on broker 0
java.net.ConnectException: Connection refused: connect
        at sun.nio.ch.Net.connect0(Native Method)
        at sun.nio.ch.Net.connect(Unknown Source)
        at sun.nio.ch.Net.connect(Unknown Source)
        at sun.nio.ch.SocketChannelImpl.connect(Unknown Source)
        at kafka.network.BlockingChannel.connect(BlockingChannel.scala:57)
        at 
kafka.controller.ControllerChannelManager.kafka$controller$ControllerChannelManager$$addNewBroker(ControllerChannelManager.scala:82)
        at 
kafka.controller.ControllerChannelManager$$anonfun$1.apply(ControllerChannelManager.scala:34)
        at 
kafka.controller.ControllerChannelManager$$anonfun$1.apply(ControllerChannelManager.scala:34)
        at scala.collection.immutable.Set$Set1.foreach(Set.scala:81)
        at 
kafka.controller.ControllerChannelManager.<init>(ControllerChannelManager.scala:34)
        at 
kafka.controller.KafkaController.startChannelManager(KafkaController.scala:520)
        at 
kafka.controller.KafkaController.initializeControllerContext(KafkaController.scala:484)
        at 
kafka.controller.KafkaController.onControllerFailover(KafkaController.scala:240)
        at 
kafka.controller.KafkaController$$anonfun$1.apply$mcV$sp(KafkaController.scala:88)
        at 
kafka.server.ZookeeperLeaderElector.elect(ZookeeperLeaderElector.scala:53)
        at 
kafka.server.ZookeeperLeaderElector$LeaderChangeListener.handleDataDeleted(ZookeeperLeaderElector.scala:106)
        at org.I0Itec.zkclient.ZkClient$6.run(ZkClient.java:549)
        at org.I0Itec.zkclient.ZkEventThread.run(ZkEventThread.java:71)
13/09/17 14:32:01 INFO server.ZookeeperLeaderElector: 0 successfully elected as 
leader
13/09/17 14:32:01 INFO controller.KafkaController: [Controller 0]: Broker 0 
starting become controller state transition
13/09/17 14:32:01 INFO controller.KafkaController: [Controller 0]: Controller 0 
incremented epoch to 3
13/09/17 14:32:01 ERROR server.ZookeeperLeaderElector: Error while electing or 
becoming leader on broker 0
java.net.ConnectException: Connection refused: connect
        at sun.nio.ch.Net.connect0(Native Method)
        at sun.nio.ch.Net.connect(Unknown Source)
        at sun.nio.ch.Net.connect(Unknown Source)
        at sun.nio.ch.SocketChannelImpl.connect(Unknown Source)
        at kafka.network.BlockingChannel.connect(BlockingChannel.scala:57)
        at 
kafka.controller.ControllerChannelManager.kafka$controller$ControllerChannelManager$$addNewBroker(ControllerChannelManager.scala:82)
        at 
kafka.controller.ControllerChannelManager$$anonfun$1.apply(ControllerChannelManager.scala:34)
        at 
kafka.controller.ControllerChannelManager$$anonfun$1.apply(ControllerChannelManager.scala:34)
        at scala.collection.immutable.Set$Set1.foreach(Set.scala:81)
        at 
kafka.controller.ControllerChannelManager.<init>(ControllerChannelManager.scala:34)
        at 
kafka.controller.KafkaController.startChannelManager(KafkaController.scala:520)
        at 
kafka.controller.KafkaController.initializeControllerContext(KafkaController.scala:484)
        at 
kafka.controller.KafkaController.onControllerFailover(KafkaController.scala:240)
        at 
kafka.controller.KafkaController$$anonfun$1.apply$mcV$sp(KafkaController.scala:88)
        at 
kafka.server.ZookeeperLeaderElector.elect(ZookeeperLeaderElector.scala:53)
        at 
kafka.server.ZookeeperLeaderElector$LeaderChangeListener.handleDataDeleted(ZookeeperLeaderElector.scala:106)
        at org.I0Itec.zkclient.ZkClient$6.run(ZkClient.java:549)
        at org.I0Itec.zkclient.ZkEventThread.run(ZkEventThread.java:71)
13/09/17 14:32:01 INFO controller.ControllerEpochListener: 
[ControllerEpochListener on 0]: Initialized controller epoch to 3 and zk 
version 2
13/09/17 14:32:01 INFO server.ZookeeperLeaderElector: 0 successfully elected as 
leader
13/09/17 14:32:01 INFO controller.KafkaController: [Controller 0]: Broker 0 
starting become controller state transition
13/09/17 14:32:01 INFO controller.KafkaController: [Controller 0]: Controller 0 
incremented epoch to 4

Thanks,
Jiang

Reply via email to