[ 
https://issues.apache.org/jira/browse/KAFKA-2805?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15001559#comment-15001559
 ] 

Mayuresh Gharat commented on KAFKA-2805:
----------------------------------------

Yes. That s right. The check was put in place because the KIP-19 explicitly 
mentioned that it should timeout the batches only if the metadata is 
unavailable. I debugged this today and found the same reasoning. I was going to 
write the same explanation before I read this comment. 

My bad, I should have considered that accumulator will not drain the batches 
for NOT ready nodes and the batches will not be expired since the metadata is 
stale and has the leader present. I have uploaded a patch for removing the 
check. 

> RecordAccumulator request timeout not enforced when all brokers are gone
> ------------------------------------------------------------------------
>
>                 Key: KAFKA-2805
>                 URL: https://issues.apache.org/jira/browse/KAFKA-2805
>             Project: Kafka
>          Issue Type: Bug
>            Reporter: Jason Gustafson
>            Assignee: Mayuresh Gharat
>            Priority: Blocker
>             Fix For: 0.9.0.0
>
>
> When no brokers are left in the cluster, the producer seems not to enforce 
> the request timeout as expected.
> From the user mailing list, the null check in batch expiration in 
> RecordAccumulator seems questionable: 
> https://github.com/apache/kafka/blob/ae5a5d7c08bb634576a414f6f2864c5b8a7e58a3/clients/src/main/java/org/apache/kafka/clients/producer/internals/RecordAccumulator.java#L220.
>  
> If this is correct behavior, it is probably worthwhile clarifying the purpose 
> of the check in a comment.



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

Reply via email to