lucasbru commented on code in PR #23588:
URL: https://github.com/apache/kafka/pull/23588#discussion_r4195896908
##########
jmh-benchmarks/src/main/java/org/apache/kafka/jmh/assignor/StreamsAssignorBenchmark.java:
##########
@@ -91,6 +91,23 @@ public enum ReportedOffsets {
NONE, OWNED_AND_DORMANT
}
+ /**
+ * The rack.aware.assignment.tags of the group, highest priority first.
Each process takes the values of every key
+ * round-robin; 2 clusters and 3 zones are coprime counts, so every
combination of the two occurs.
Review Comment:
That seems like a fairly optimistic case. what happens if we increase the
number of groups?
##########
group-coordinator/src/main/java/org/apache/kafka/coordinator/group/streams/assignor/StickyTaskAssignor.java:
##########
@@ -563,15 +756,80 @@ public Member(final String processId, final String
memberId) {
private record StandbyCandidate(Member member, boolean isPrevStandby, long
offsetSum) {
}
+ /** Processes with the same values for the keys of {@code
rack.aware.assignment.tags}, see {@link #groupProcessesByTagValues}. */
+ private static final class IdenticalTagGroup {
Review Comment:
A lot of this logic (the tag grouping) could/should be reused in the
balanced assignor. Could we move it to a place where the implementation can be
shared?
--
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]