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