Geoff,

First, if you haven't already, take a look at
https://cwiki.apache.org/confluence/display/KAFKA/KIP-6+-+New+reassignment+partition+logic+for+rebalancing
and the associated JIRA.

My opinion is that we shouldn't do anything to the existing partitions --
it would probably violate the principle of least surprise if you started
moving data around when all I asked you to do was add new partitions.

I think this aligns well with the basic approach of KIP 6 (which is not
approved yet, but I think folks are generally in favor of once it is fully
specified). The goal is to move as little data as possible, but achieve the
best balance. I think if the user wanted any *other* partitions rebalanced,
they should use the reassignment tool, which KIP 6 will hopefully make a
lot easier soon. But at a minimum, adding the new partitions should try not
to make the balance any worse than it already is.

Not sure what this means for fixing the JIRA though -- reusing what KIP 6
is doing but applying it to the new partitions seems like the ideal
solution. The current createTopic code doesn't take into account existing
assignments, but I don't think it makes sense to duplicate effort between
the two patches. I'm not sure what the timeframe of KIP 6, but if its not
too far away you might just mark it as blocking KAFKA-1313, prepare a patch
against the KAFKA-1792's latest version, and maybe update KAFKA-1313's fix
version to 0.8.3 to match KAFKA-1792's.

-Ewen

On Mon, Mar 9, 2015 at 3:14 PM, Geoffrey Anderson <ge...@confluent.io>
wrote:

> Hi dev list, I have a few questions regarding KAFKA-1313 (
> https://issues.apache.org/jira/browse/KAFKA-1313)
>
> It is currently possible albeit in a kindof hacky way to increase
> replication factor on a topic by using the partition reassignment tool with
> a hand-crafted reassignment plan.
>
> The preferred approach to making this better is to add support for
> replication-factor in the alter-topic command. For example,
>
> bin/kafka-topics.sh --zookeeper localhost:2181 --topic test --alter
> --replication-factor 2
>
>
> Another approach is use the partition reassignment tool to auto-generate a
> reassignment plan which results in increased replication.
>
> The advantage of the alter topics approach is that it seems logical to
> group this functionality with the other alter topic stuff. However, a
> couple questions:
> - Should partitions automatically be reassigned to brokers and shuffled
> when the replication factor is changed?
> - If so, it would be best to be able to update the replication factor of
> multiple topics at once so that the automatic reassignment would take place
> only once for the whole batch of changes.
>
> One advantage of the partition reassignment approach is that it's easier to
> generate a reassignment plan which updates multiple topics at once, and you
> have a chance to review the reassignment plan before putting it into effect
> with the --execute flag.
>
> Thanks,
> Geoff
>



-- 
Thanks,
Ewen

Reply via email to