see these errors in producer's log:
=== [2014-05-17 08:38:59,983] ERROR Error handling event ZkEvent[Children of /brokers/topics/test_device_updates changed sent to kafka .producer.ZKBrokerPartitionInfo$BrokerTopicsListener@1b0ec7cc] (org.I0Itec.zkclient.ZkEventThread) java.lang.NullPointerException at org.I0Itec.zkclient.ZkConnection.readData(ZkConnection.java:103) at org.I0Itec.zkclient.ZkClient$9.call(ZkClient.java:770) at org.I0Itec.zkclient.ZkClient$9.call(ZkClient.java:766) at org.I0Itec.zkclient.ZkClient.retryUntilConnected(ZkClient.java:675) at org.I0Itec.zkclient.ZkClient.readData(ZkClient.java:766) at org.I0Itec.zkclient.ZkClient.readData(ZkClient.java:761) at org.I0Itec.zkclient.ZkClient.readData(ZkClient.java:750) at org.I0Itec.zkclient.ZkClient.readData(ZkClient.java:744) at kafka.utils.ZkUtils$.readData(ZkUtils.scala:162) at kafka.producer.ZKBrokerPartitionInfo$$anonfun$1.apply$mcII$sp(ZKBrokerPartitionInfo.scala:40) at kafka.producer.ZKBrokerPartitionInfo$$anonfun$1.apply(ZKBrokerPartitionInfo.scala:40) at kafka.producer.ZKBrokerPartitionInfo$$anonfun$1.apply(ZKBrokerPartitionInfo.scala:40) at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:233) at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:233) at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:59) at scala.collection.immutable.List.foreach(List.scala:76) at scala.collection.TraversableLike$class.map(TraversableLike.scala:233) at scala.collection.immutable.List.map(List.scala:76) at kafka.producer.ZKBrokerPartitionInfo$.kafka$producer$ZKBrokerPartitionInfo$$getBrokerPartitions(ZKBrokerPartitionInfo.s cala:40) at kafka.producer.ZKBrokerPartitionInfo$BrokerTopicsListener. processNewBrokerInExistingTopic(ZKBrokerPartitionInfo.scala:3 09) at kafka.producer.ZKBrokerPartitionInfo$BrokerTopicsListener. handleChildChange(ZKBrokerPartitionInfo.scala:250) at org.I0Itec.zkclient.ZkClient$7.run(ZkClient.java:568) at org.I0Itec.zkclient.ZkEventThread.run(ZkEventThread.java:71) [2014-05-17 09:21:39,558] ERROR Error handling event ZkEvent[Children of /brokers/topics/test_mode_control changed sent to kafka.p roducer.ZKBrokerPartitionInfo$BrokerTopicsListener@1b0ec7cc] (org.I0Itec.zkclient.ZkEventThread) java.lang.NullPointerException at org.I0Itec.zkclient.ZkConnection.exists(ZkConnection.java:95) === After looking at the code of *ZKBrokerPartitionInfo*, seems that this handleChildChange will only be triggered when there is new broker added or removed from the cluster, but we did not do that at that time, according to the monitoring, we also didn't see any broker offline at that time. so is there any other reason that will cause this error? -- Best Regards ---------------------- 刘明敏 | mmLiu