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

Lianet Magrans commented on KAFKA-19300:
----------------------------------------

Hey [~chia7712], good catch! The test passes actually, (API call won't fail 
because it just logs the timeout), but agree it will indeed wait for a response 
to the HB. Your suggestion makes sense to me (we should probably ensure that 
all checks for no-op based on state==UNSUBSCRIBE do 
maybeCompleteLeaveInProgress, like it's done on the failure path 
https://github.com/apache/kafka/blob/f397cbc14ccaa6244c5aa720718a47ccb1d26628/clients/src/main/java/org/apache/kafka/clients/consumer/internals/AbstractMembershipManager.java#L308
 ). I see it's assigned already but will stay in the loop to help with reviews 
then. Thanks! 

> AsyncConsumer#unsubscribe always timeout due to GroupAuthorizationException
> ---------------------------------------------------------------------------
>
>                 Key: KAFKA-19300
>                 URL: https://issues.apache.org/jira/browse/KAFKA-19300
>             Project: Kafka
>          Issue Type: Bug
>            Reporter: Chia-Ping Tsai
>            Assignee: Chia-Ping Tsai
>            Priority: Major
>
> it can be reproduced by 
> GroupAuthorizerIntegrationTest.testConsumeUnsubscribeWithoutGroupPermission.
> The root cause is shown below.
> 1. AsyncConsumer#unsubscribe is executed
> 2. process(UnsubscribeEvent) changes the state to LEAVING
> 3. the state is changed to UNSUBSCRIBED in generating Heartbeat
> 4. the `LeaveInProgress` is skipped in transitionToFatal since the state is 
> UNSUBSCRIBED
> The behavior is inconsistent to classic consumer



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

Reply via email to