You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2018/01/15 13:33:01 UTC

[jira] [Commented] (KAFKA-1894) Avoid long or infinite blocking in the consumer

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

Claus Ibsen commented on KAFKA-1894:
------------------------------------

Yeah this was a bit of surprise, and would be good to get corrected. I put my vote for this ticket, others are encourage to vote as well.

> Avoid long or infinite blocking in the consumer
> -----------------------------------------------
>
>                 Key: KAFKA-1894
>                 URL: https://issues.apache.org/jira/browse/KAFKA-1894
>             Project: Kafka
>          Issue Type: Improvement
>          Components: consumer
>            Reporter: Jay Kreps
>            Assignee: Jason Gustafson
>            Priority: Major
>             Fix For: 1.1.0
>
>
> The new consumer has a lot of loops that look something like
> {code}
>   while(!isThingComplete())
>     client.poll();
> {code}
> This occurs both in KafkaConsumer but also in NetworkClient.completeAll. These retry loops are actually mostly the behavior we want but there are several cases where they may cause problems:
>  - In the case of a hard failure we may hang for a long time or indefinitely before realizing the connection is lost.
>  - In the case where the cluster is malfunctioning or down we may retry forever.
> It would probably be better to give a timeout to these. The proposed approach would be to add something like retry.time.ms=60000 and only continue retrying for that period of time.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)