[ https://issues.apache.org/jira/browse/KAFKA-998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13729681#comment-13729681 ]
Guozhang Wang commented on KAFKA-998: ------------------------------------- Approach proposal: 1. Passing the errorCode from send to dispatchSerializedData to handle along with the outstandingProduceRequests. 2. When outstandingProduceRequests.size > 0, check the corresponding error code, if the error code indicates a non-avoidable error such as MessageSizeTooLarge, then break the while loop intermediately. By doing so it would also be easier in the future if we want to make a smarted producer client by dynamically shrinking the batch size. > Producer should not retry on non-recoverable error codes > -------------------------------------------------------- > > Key: KAFKA-998 > URL: https://issues.apache.org/jira/browse/KAFKA-998 > Project: Kafka > Issue Type: Bug > Affects Versions: 0.8, 0.8.1 > Reporter: Joel Koshy > Assignee: Guozhang Wang > > Based on a discussion with Guozhang. The producer currently retries on all > error codes (including messagesizetoolarge which is pointless to retry on). > This can slow down the producer unnecessarily. > If at all we want to retry on that error code we would need to retry with a > smaller batch size, but that's a separate discussion. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira