Description
Sending a produce request with an empty client ID to a 0.9.0.0 broker causes the broker to crash as shown below. More details can be found in the following email thread:
[2016-01-10 23:03:44,957] ERROR [KafkaApi-3] error when handling request Name: ProducerRequest; Version: 0; CorrelationId: 1; ClientId: null; RequiredAcks: 1; AckTimeoutMs: 10000 ms; TopicAndPartition: [topic_1,3] -> 37 (kafka.server.KafkaApis)
java.lang.NullPointerException
at org.apache.kafka.common.metrics.JmxReporter.getMBeanName(JmxReporter.java:127)
at org.apache.kafka.common.metrics.JmxReporter.addAttribute(JmxReporter.java:106)
at org.apache.kafka.common.metrics.JmxReporter.metricChange(JmxReporter.java:76)
at org.apache.kafka.common.metrics.Metrics.registerMetric(Metrics.java:288)
at org.apache.kafka.common.metrics.Sensor.add(Sensor.java:177)
at org.apache.kafka.common.metrics.Sensor.add(Sensor.java:162)
at kafka.server.ClientQuotaManager.getOrCreateQuotaSensors(ClientQuotaManager.scala:209)
at kafka.server.ClientQuotaManager.recordAndMaybeThrottle(ClientQuotaManager.scala:111)
at kafka.server.KafkaApis.kafka$server$KafkaApis$$sendResponseCallback$2(KafkaApis.scala:353)
at kafka.server.KafkaApis$$anonfun$handleProducerRequest$1.apply(KafkaApis.scala:371)
at kafka.server.KafkaApis$$anonfun$handleProducerRequest$1.apply(KafkaApis.scala:371)
at kafka.server.ReplicaManager.appendMessages(ReplicaManager.scala:348)
at kafka.server.KafkaApis.handleProducerRequest(KafkaApis.scala:366)
at kafka.server.KafkaApis.handle(KafkaApis.scala:68)
at kafka.server.KafkaRequestHandler.run(KafkaRequestHandler.scala:60)
at java.lang.Thread.run(Thread.java:745)