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



##########
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:
       Thanks @showuon and @guozhangwang , I think that all makes sense. One of 
my primary motivations was to keep all data structures at all times consistent 
with what they represent so they could always be relied upon to be used at any 
point. For that reason I also prefer to keep things as is, and clear the 
`potentiallyUnfilledMembersAtMinQuota` (now renamed to 
`nfilledMembersWithExactlyMinQuotaPartitions`) as soon as we have filled the 
last member who may be above `minQuota`, at which point all of the members at 
exactly `minQuota` are no longer considered "unfilled"




-- 
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