rajinisivaram opened a new pull request, #12914: URL: https://github.com/apache/kafka/pull/12914
This PR adds consumer group protocol changes for supporting rack-aware assignment for consumers. It also enables rack-aware assignment in the range assignor and sticky assignors so that default assignors are rack-aware when consumer rack is configured, improving locality with fetch-from-follower when some racks only contain replicas of a subset of partitions. Rack-aware assignment is performed on a best-effort basis and we prioritize balanced assignment over locality. With sticky assignors, we may perform reassignment to improve locality. All unit tests for range assignor and sticky assignor have been updated to run using both non-rack-aware and rack-aware logic where all partitions are on all racks. This verifies that assignment result with the old logic in preserved with this PR. Additional unit tests have been added for rack-aware assignment. ### Committer Checklist (excluded from commit message) - [ ] Verify design and implementation - [ ] Verify test coverage and CI build status - [ ] Verify documentation (including upgrade notes) -- 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