Is it possible to have a consumer rebalancing partition assignment strategy 
that will rebalance with a minimal number of reassignments?

Per the "Kafka 0.9 Consumer Rewrite Design" it should be possible to define my 
own partition assignment strategy: "partition.assignment.strategies - may take 
a comma separated list of properties that map the strategy's friendly name to 
to the class that implements the strategy. This is used for any strategy 
implemented by the user and released to the Kafka cluster. By default, Kafka 
will include a set of strategies that can be used by the consumer."

Is there a Jira ticket that tracks adding user defined 
partitions.assignment.strategies? In the latest source, range, and roundrobin 
are still the only possible values (hard-coded).

I assume that any user implemented strategy would have to implement the 
PartitionAssignor trait. If so, by naively looking at the 0.8.3 source, a 
strategy that should do a minimal number of partition reassignments would need 
the ConsumerMetaData. That's not currently available in the PartitionAssignor 
contract - assign(topicsPerConsumer, partitionsPerTopic). Have there been any 
discussion to change the contract to pass ConsumerMetaData?

Reply via email to