[ 
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)

Reply via email to