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