You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Bryan Baugher (JIRA)" <ji...@apache.org> on 2016/03/07 22:16:40 UTC

[jira] [Created] (KAFKA-3345) ProducerResponse could gracefully handle no throttle time provided

Bryan Baugher created KAFKA-3345:
------------------------------------

             Summary: ProducerResponse could gracefully handle no throttle time provided
                 Key: KAFKA-3345
                 URL: https://issues.apache.org/jira/browse/KAFKA-3345
             Project: Kafka
          Issue Type: Improvement
            Reporter: Bryan Baugher
            Priority: Minor


When doing some compatibility testing between kafka 0.8 and 0.9 I found that the old producer using 0.9 libraries could write to a cluster running 0.8 if 'request.required.acks' was set to 0. If it was set to anything else it would fail with,

{code}
java.nio.BufferUnderflowException
	at java.nio.Buffer.nextGetIndex(Buffer.java:506) 
	at java.nio.HeapByteBuffer.getInt(HeapByteBuffer.java:361) 
	at kafka.api.ProducerResponse$.readFrom(ProducerResponse.scala:41) 
	at kafka.producer.SyncProducer.send(SyncProducer.scala:109) 
{code}

In 0.9 there was a one line change to the response here[1] to look for a throttle time value in the response. It seems if the 0.9 code gracefully handled throttle time not being provided this would work. Would you be open to this change?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)