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

Lianet Magrans commented on KAFKA-17518:
----------------------------------------

I would add to this Jira, that it would be a good validation if we can end this 
with an integration test that calls close(0) and ensures that the group becomes 
empty. I expect such test would pass on trunk for the classic consumer now (it 
does send the leave group, without waiting for a response because it has 0 
timeout), but same test requires this Jira to pass for the async consumer. 
(Discussion on KAFKA-16985 PR has more context since it was there where this 
issue was discovered)

> AsyncKafkaConsumer cannot reliably leave group when closed with small timeout
> -----------------------------------------------------------------------------
>
>                 Key: KAFKA-17518
>                 URL: https://issues.apache.org/jira/browse/KAFKA-17518
>             Project: Kafka
>          Issue Type: Bug
>          Components: clients, consumer
>    Affects Versions: 3.9.0
>            Reporter: Kirk True
>            Priority: Major
>              Labels: consumer-threading-refactor, kip-848-client-support
>
> If {{close()}} is called with a short timeout (e.g. 0 ms), the process cannot 
> complete, leading to the consumer remaining in the consumer group.
> On {{{}close(){}}}, the consumer attempts to unsubscribe and leave the 
> consumer group. This process requires hops back and forth between the 
> application and background threads to call the 
> {{{}ConsumerRebalanceListener{}}}. Those hops add a nonzero amount of time to 
> the close step.
> The events used to communicate between the application and background threads 
> are based on the timeout provided by the user. If the timeout is not 
> sufficient, the events will expire, and the process will be left incomplete.



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

Reply via email to