我使用Spark應用程序中的Kafka向某個主題發送一些通知。我在Spark日誌中看到以下異常,並且郵件未傳遞到主題。Kafka - 發送NullPointerException
15/09/08 3時29分24秒錯誤發信人:卡夫卡生產I/O線程未捕獲的錯誤:
java.lang.NullPointerException
at org.apache.kafka.common.network.NetworkReceive.complete(NetworkReceive.java:48)
at org.apache.kafka.common.network.Selector.poll(Selector.java:249)
at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:192)
at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:191)
at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:122)
at java.lang.Thread.run(Thread.java:745)
我不知道是什麼原因導致這個錯誤,並查看源,它似乎NetworkReceive.java中的大小或緩衝區變量都爲空。
通過掃描日誌,我發現在此日誌條目之前,會出現以下消息之一。
15/09/08 03:29:24 ERROR Sender: Uncaught error in kafka producer I/O thread:
java.lang.IllegalStateException: Invalid request (size = -2097152000)
at org.apache.kafka.common.network.NetworkReceive.readFrom(NetworkReceive.java:68)
at org.apache.kafka.common.network.Selector.poll(Selector.java:248)
at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:192)
at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:191)
at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:122)
at java.lang.Thread.run(Thread.java:745)
15
到底發生了什麼事! –