[ 
https://issues.apache.org/jira/browse/KAFKA-21084?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

sanghyeok An updated KAFKA-21084:
---------------------------------
    Component/s: clients
                 consumer

> Async consumer busy-loops when paused fetches are requeued into FetchBuffer
> ---------------------------------------------------------------------------
>
>                 Key: KAFKA-21084
>                 URL: https://issues.apache.org/jira/browse/KAFKA-21084
>             Project: Kafka
>          Issue Type: Bug
>          Components: clients, consumer
>            Reporter: sanghyeok An
>            Assignee: sanghyeok An
>            Priority: Major
>
> {*}Description{*}{*}{*}
> AsyncKafkaConsumer.poll() can busy-loop when buffered fetches belong to 
> paused partitions and no records can be returned. 
> FetchCollector.collectFetch() preserves paused fetches by requeuing them 
> through FetchBuffer.addAll(). However, addAll() also sets wokenup = true. The 
> subsequent awaitWakeup() consumes this signal and returns without blocking.
>  
> Repeated collection of the same paused fetches regenerates the signal, 
> allowing the application thread to spin in poll() until its timeout expires, 
> without new fetch responses or consumption progress.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to