sanghyeok An created KAFKA-21084:
------------------------------------

             Summary: 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
            Reporter: sanghyeok An
            Assignee: sanghyeok An


{*}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