showuon commented on a change in pull request #10985:
URL: https://github.com/apache/kafka/pull/10985#discussion_r668510115



##########
File path: 
clients/src/main/java/org/apache/kafka/clients/consumer/internals/AbstractStickyAssignor.java
##########
@@ -205,6 +237,9 @@ private boolean allSubscriptionsEqual(Set<String> allTopics,
                 // consumer owned the "maxQuota" of partitions or more, and 
we're still under the number of expected members
                 // with more than the minQuota partitions, so keep "maxQuota" 
of the owned partitions, and revoke the rest of the partitions
                 numMembersAssignedOverMinQuota++;
+                if (numMembersAssignedOverMinQuota == 
expectedNumMembersAssignedOverMinQuota) {
+                    potentiallyUnfilledMembersAtMinQuota.clear();

Review comment:
       > this logic Seems only needed because we have the check in 309 (?)
   
   No, I don't think so. It should be for line 279:
   ```java
   // to handle the case that when there are still unassignedPartition left, 
but no more members to be assigned.
   if (unfilledMembersWithUnderMinQuotaPartitions.isEmpty() && 
unfilledMembersWithExactlyMinQuotaPartitions.isEmpty()) {
      throw new IllegalStateException("No more unfilled consumers to be 
assigned.");
   ```
   
   In line 309, it is just an early error detect and log for it. Not related to 
`potentiallyUnfilledMembersAtMinQuota` (or now 
`unfilledMembersWithExactlyMinQuotaPartitions` members)
   
   




-- 
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: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to