我最近试图使用来自Kafka主题的消息,收到以下错误消息:
[2016-08-15 17:56:05,025] INFO Closing socket connection to /192.168.34.11. (kafka.network.Processor)
[2016-08-15 17:56:05,050] ERROR Closing socket for /127.0.0.1 because of error (kafka.network.Processor)
kafka.common.KafkaException: Wrong request type 18
at kafka.api.RequestKeys$.deserializerForKey(RequestKeys.scala:64)
at kafka.network.RequestChannel$Request.<init>(RequestChannel.scala:50)
at kafka.network.Processor.read(SocketServer.scala:450)
at kafka.network.Processor.run(SocketServer.scala:340)
at java.lang.Thread.run(Thread.java:745)
[2016-08-15 17:56:05,154] ERROR Closing socket for /127.0.0.1 because of error (kafka.network.Processor)
kafka.common.KafkaException: Wrong request type 16
at kafka.api.RequestKeys$.deserializerForKey(RequestKeys.scala:64)
at kafka.network.RequestChannel$Request.<init>(RequestChannel.scala:50)
at kafka.network.Processor.read(SocketServer.scala:450)
at kafka.network.Processor.run(SocketServer.scala:340)
at java.lang.Thread.run(Thread.java:745)
[2016-08-15 17:56:10,476] ERROR Closing socket for /127.0.0.1 because of error (kafka.network.Processor)
java.io.IOException: Broken pipe
at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
at sun.nio.ch.IOUtil.write(IOUtil.java:65)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:487)
at kafka.api.TopicDataSend.writeTo(FetchResponse.scala:123)
at kafka.network.MultiSend.writeTo(Transmission.scala:101)
at kafka.api.FetchResponseSend.writeTo(FetchResponse.scala:231)
at kafka.network.Processor.write(SocketServer.scala:472)
at kafka.network.Processor.run(SocketServer.scala:342)
at java.lang.Thread.run(Thread.java:745)
您也许可以从错误消息中看出,kafka代理被Map到localhost—但除此之外,我无法真正解析它,而且很难找到有关错误消息“错误请求类型18”的详细信息。
还有人有这个问题吗?
2条答案
按热度按时间cbeh67ev1#
这个错误似乎已经消失了,但我想我没有做任何改变;我不确定到底发生了什么。对不起,这个没用的问题。
643ylb082#
这个错误告诉您客户端发送了一个代理无法理解的请求。在你的特殊情况下,客户发送了
ListGroupsRequest
(请求代码)16
)以及ApiVersionsRequest
(请求代码)18
).您可以在这里获得最新的请求代码列表。这里也提供了这个列表,但它看起来有点过时,因为最新版本包含更多的api键。
要解决此问题,您需要升级代理或使用旧客户端。