dajac opened a new pull request, #23733:
URL: https://github.com/apache/kafka/pull/23733
Depends on #23732: only the last commit belongs to this PR.
uniform2 decides how many partitions of every topic each member gets,
its shares, in three steps, keep, hand out and balance, and then places
the partitions. A topic with P partitions and N subscribers gives P / N
base partitions to each of them, and its P % N extra partitions to as
many distinct subscribers.
This patch adds the shares and their first two steps:
- `Shares` holds the base and extra partitions of every topic, the
members getting the extra partitions, and the sizes of the members.
In the keep step, a member owning more than the base partitions of a
topic keeps one of its extra partitions, the members with the
smallest assignments first when the owners outnumber the extra
partitions.
- `HandOut` gives the extra partitions that nobody kept, one at a time,
to subscribers without one of the topic, among the ones with the
smallest assignments: the topics with the fewest subscribers first,
and round robin within a cohort.
- `TestGroup` builds the model, the current assignment and the shares
of a group for the tests of the steps.
The balance step comes in a later patch.
--
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]