Hi, I see. I have follow-up questions below.

- This appears to be the "round-robin topic-to-bundle mapping" option in
the `fundBundle` function. Is this the only place that needs an update? Can
you list what change is required?

- How do we enable this "round-robin topic-to-bundle mapping option" (by
namespace policy and broker.conf)?

- Can we apply this option to existing namespaces? (what's the admin
operation to enable this option)?

- I assume the "round-robin topic-to-bundle mapping option" works with a
single partitioned topic, because other topics might show different load
per partition. Is this intention? (so users need to ensure not to put other
topics in the namespace, if this option is  configured)

- Some brokers might have more bundles than other brokers. Do we have
different logic for bundle balancing across brokers? or do we rely on the
existing assign/unload/split logic to balance bundles among brokers?

Thanks,
Heesung



On Tue, Mar 21, 2023 at 7:27 AM Lin Lin <lin...@apache.org> wrote:

>
>
> Thanks for joining this discussion
>
> > 1. where is the partition to bundle mapping stored?
>
> We don't need to store the mapping relationship, it can be calculated
> dynamically. The first is the starting bundle, partition-0 is calculated
> directly through consistent hashing. Subsequent partitions are assigned to
> subsequent bundles by round robin
>
> > 2. when upgrade origin logic to the new round robin logic. how the
> current code distinguish partition assigned by origin logic and the new
> created topic assign by round robin logic.
>
> This is an incompatible modification, so the entire cluster needs to be
> upgraded, not just a part of the nodes
>
> > 2. can you explain how the re-assignment works (when bundle number
> change). which component will trigger and do the work ?
>
> When a bundle-split occurs, the bundle unload at the namespace level will
> be triggered. In this namespace, the binding relationship between all
> partitions and the bundle will be re-determined. The re-determined steps
> are as stated in the issue:
> 1) partition-0 finds the starting bundle through consistent hashing
> 2) Subsequent partitions are assigned to subsequent bundles by round robin
>
>
> > 3. If bundle-split is not expected. how many bundle should user set. and
> do we need disable bundle split we the round robin logic applied.
>
> Now this way does not limit the use of bundle-split, but it will trigger
> the rebinding of partitions under the entire namespace during bundle split,
> and there will be a certain allocation time
>

Reply via email to