[ https://issues.apache.org/jira/browse/KAFKA-1894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15330848#comment-15330848 ]
Edoardo Comar edited comment on KAFKA-1894 at 6/14/16 11:17 PM: ---------------------------------------------------------------- Another case that leads to the loop {code} public void awaitMetadataUpdate() { int version = this.metadata.requestUpdate(); do { poll(Long.MAX_VALUE); } while (this.metadata.version() == version); } {code} to be stuck forever is the case where Authentication is turned on - with SASL PLAIN - and the user specifies wrong credentials. was (Author: ecomar): Another case that leads to the loop ``` public void awaitMetadataUpdate() { int version = this.metadata.requestUpdate(); do { poll(Long.MAX_VALUE); } while (this.metadata.version() == version); } ``` to be stuck forever is the case where Authentication is turned on - with SASL PLAIN - and the user specifies wrong credentials. > Avoid long or infinite blocking in the consumer > ----------------------------------------------- > > Key: KAFKA-1894 > URL: https://issues.apache.org/jira/browse/KAFKA-1894 > Project: Kafka > Issue Type: Sub-task > Components: consumer > Reporter: Jay Kreps > Assignee: Jason Gustafson > Fix For: 0.10.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 (v6.3.4#6332)