You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "dajac (via GitHub)" <gi...@apache.org> on 2026/09/24 12:09:42 UTC

[PR] MINOR: Rework the steps and the current assignment of ConsumerAssignorBenchmark [kafka]

dajac opened a new pull request, #23576:
URL: https://github.com/apache/kafka/pull/23576

   For the events other than FULL, ConsumerAssignorBenchmark fed the output of the assignor back
   as the current assignment, so the incremental events measured whatever set types the assignor
   returned (RangeSet for the range assignor). The coordinator replays the target assignment from
   its records instead, and Assignment.fromRecord builds a HashMap with a HashSet per topic. The
   benchmark now builds the current assignment of every member the same way, for every assignor
   and every event.
   
   The member, topic and partition counts now form a plain cross product in which every
   combination is a valid group:
   - memberCount: 5, 50, 500, 5000
   - topicCount: 5, 50, 500, 5000
   - partitionCount (total over all topics): 10000, 20000, 50000, 100000
   
   The class Javadoc is updated with the number of combinations (10752), the example jmh.sh runs
   and the heap the largest groups need (about 1 GB).
   


-- 
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-unsubscribe@kafka.apache.org

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


Re: [PR] MINOR: Tweak ConsumerAssignorBenchmark [kafka]

Posted by "dajac (via GitHub)" <gi...@apache.org>.
dajac merged PR #23576:
URL: https://github.com/apache/kafka/pull/23576


-- 
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-unsubscribe@kafka.apache.org

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


Re: [PR] MINOR: Rework the steps and the current assignment of ConsumerAssignorBenchmark [kafka]

Posted by "dajac (via GitHub)" <gi...@apache.org>.
dajac commented on code in PR #23576:
URL: https://github.com/apache/kafka/pull/23576#discussion_r4093439732


##########
jmh-benchmarks/src/main/java/org/apache/kafka/jmh/assignor/ConsumerAssignorBenchmark.java:
##########
@@ -382,10 +393,10 @@ Group build() {
             for (int i = 0; i < memberCount; i++) {
                 var memberId = "member" + i;
                 var memberAssignment = currentAssignment.members().get(memberId);
-                Map<Uuid, Set<Integer>> partitions = Map.of();
+                var assignment = Assignment.EMPTY;
                 if (memberAssignment != null) {
-                    partitions = memberAssignment.partitions();
-                    partitions.forEach((topicId, topicPartitions) -> {
+                    assignment = replayedAssignment(memberAssignment.partitions());
+                    assignment.partitions().forEach((topicId, topicPartitions) -> {

Review Comment:
   nit: We could combine `replayedAssignment` in this loop and add an small comment to explain why we rebuild a `HashMap`.



-- 
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-unsubscribe@kafka.apache.org

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