You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Jay Kreps (JIRA)" <ji...@apache.org> on 2015/01/23 19:29:34 UTC
[jira] [Created] (KAFKA-1894) Avoid long or infinite blocking in
the consumer
Jay Kreps created KAFKA-1894:
--------------------------------
Summary: 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
Reporter: Jay Kreps
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)