varunv-cflt commented on code in PR #23174:
URL: https://github.com/apache/kafka/pull/23174#discussion_r3794902994


##########
group-coordinator/src/main/java/org/apache/kafka/coordinator/group/GroupMetadataManager.java:
##########
@@ -7706,6 +7706,15 @@ private CoordinatorResult<Void, CoordinatorRecord> 
updateMemberThenRebalanceOrCo
         String joinReason,
         CompletableFuture<JoinGroupResponseData> responseFuture
     ) {
+        // A prior JoinGroup for this member may still be pending; complete it 
before
+        // group.updateMember discards it, or it would never resolve on its 
own.
+        if (member.isAwaitingJoin()) {
+            group.completeJoinFuture(member, new JoinGroupResponseData()
+                .setMemberId(member.memberId())
+                .setErrorCode(Errors.REBALANCE_IN_PROGRESS.code())

Review Comment:
   I have kept the same behavior we have in `classicGroupSyncToClassicGroup` 
which returns `REBALANCE_IN_PROGRESS` is the group is in rebalance
   
   ```
    } else if (group.isInState(PREPARING_REBALANCE)) {
         responseFuture.complete(new SyncGroupResponseData()
         .setErrorCode(Errors.REBALANCE_IN_PROGRESS.code()));
   ```
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to