You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Matthias J. Sax (Jira)" <ji...@apache.org> on 2020/07/28 04:11:00 UTC

[jira] [Commented] (KAFKA-10315) Consider to throw exception for failed fetch requests

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

Matthias J. Sax commented on KAFKA-10315:
-----------------------------------------

[~showuon] thanks for you interest in this ticket. Before you spent a lot of time on it, I just want to point out, that this ticket is meant as a "placeholder / reminder" and it's not really clear if the proposal is what we actually want/need.

We should discuss/brainstorm on the Jira before we start an actually KIP. I am sure that [~guozhang] [~vvcephei] and [~hachikuji] have some thoughts about this idea and we should hear them out first.

> Consider to throw exception for failed fetch requests
> -----------------------------------------------------
>
>                 Key: KAFKA-10315
>                 URL: https://issues.apache.org/jira/browse/KAFKA-10315
>             Project: Kafka
>          Issue Type: New Feature
>          Components: consumer
>            Reporter: Matthias J. Sax
>            Assignee: Luke Chen
>            Priority: Major
>              Labels: need-kip
>
> The current `Consumer#poll(Duration)` method is designed to block until data is available or the provided poll timeout expires. This implies, that if fetch requests fail the consumer retries them internally and eventually returns an empty set of records. – Thus, from a user point of view, returning an empty set of records can mean that no data is available broker side or that the broker cannot be reached.
> For Kafka Streams, this behavior is problematic as its runtime would like to distinguish both cases, to apply its own timeouts (cf https://issues.apache.org/jira/browse/KAFKA-9274).
> One idea to address this issue is to add a new method `Consumer#pollOnce()` that would throw an exception if a fetch request fails instead of retrying internally.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)