[ https://issues.apache.org/jira/browse/KAFKA-1241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13896114#comment-13896114 ]
Jay Kreps commented on KAFKA-1241: ---------------------------------- Hey [~nehanarkhede] I think that is a real bug that someone pointed out in the code review, namely that when the metadata refresh happens if it goes to a broker that also gets a produce request in the same iteration it is possible to have two unsent requests at the same time (which we don't allow). The fix is fairly straight-forward but let me break it into a seperate issue from the error message bug. In any case I think the patch I posted fixes the logging in the serialization. I'll fix up the sender logging when we do the slf4j. So can I get a +1 on this? > Cryptic serde error messages in new producer > -------------------------------------------- > > Key: KAFKA-1241 > URL: https://issues.apache.org/jira/browse/KAFKA-1241 > Project: Kafka > Issue Type: Bug > Components: producer > Affects Versions: 0.9.0 > Reporter: Neha Narkhede > Assignee: Jay Kreps > Priority: Critical > Attachments: KAFKA-1241.patch > > > One of the motivations for the new serde format is better error reporting. I > was running a test on the new mirror maker when I saw this exception - > java.nio.BufferUnderflowException > at java.nio.Buffer.nextGetIndex(Buffer.java:480) > at java.nio.HeapByteBuffer.getInt(HeapByteBuffer.java:336) > at kafka.common.protocol.types.Type$3.read(Type.java:88) > at kafka.common.protocol.types.Schema.read(Schema.java:50) > at kafka.common.protocol.types.ArrayOf.read(ArrayOf.java:30) > at kafka.common.protocol.types.Schema.read(Schema.java:50) > at kafka.common.protocol.types.ArrayOf.read(ArrayOf.java:30) > at kafka.common.protocol.types.Schema.read(Schema.java:50) > at > kafka.clients.producer.internals.Sender.handleResponses(Sender.java:273) > at kafka.clients.producer.internals.Sender.run(Sender.java:144) > at kafka.clients.producer.internals.Sender.run(Sender.java:84) > at java.lang.Thread.run(Thread.java:619) > I was expecting to see a precise error message about the Request type that > serde failed for. Instead it says Type$3 and no information on which field. -- This message was sent by Atlassian JIRA (v6.1.5#6160)