[
https://issues.apache.org/jira/browse/KAFKA-3280?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gwen Shapira resolved KAFKA-3280.
---------------------------------
Resolution: Fixed
Issue resolved by pull request 968
[https://github.com/apache/kafka/pull/968]
> KafkaConsumer Javadoc contains misleading description of heartbeat behavior
> and correct use
> -------------------------------------------------------------------------------------------
>
> Key: KAFKA-3280
> URL: https://issues.apache.org/jira/browse/KAFKA-3280
> Project: Kafka
> Issue Type: Bug
> Components: consumer
> Affects Versions: 0.9.0.0
> Reporter: Richard Whaling
> Assignee: Neha Narkhede
> Labels: doc
> Fix For: 0.10.0.0
>
> Original Estimate: 0.25h
> Remaining Estimate: 0.25h
>
> The KafkaConsumer Javadoc says that: "The consumer will automatically ping
> the cluster periodically, which lets the cluster know that it is alive. As
> long as the consumer is able to do this it is considered alive and retains
> the right to consume from the partitions assigned to it." This is false.
> The heartbeat process is neither automatic nor periodic. The consumer
> heartbeats exactly once when poll() is called. The consumer's run thread is
> responsible for calling poll() before session.timeout.ms elapses.
> Based on this misinformation, it is easy for a naive implementer to build a
> batch-based kafka consumer that takes longer than session.timeout.ms between
> poll() calls and encounter very ugly rebalance loops that can be very hard to
> diagnose. Clarification in the docs would help a lot--I'll submit a patch
> shortly.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)