Allen Wang created KAFKA-5724:

             Summary: AbstractPartitionAssignor does not take into 
consideration that partition number may start from non-zero
                 Key: KAFKA-5724
             Project: Kafka
          Issue Type: Bug
          Components: clients, consumer
    Affects Versions:
            Reporter: Allen Wang

In AbstractPartitionAssignor.assign(Cluster metadata, Map<String, Subscription> 
subscriptions), it invokes assign(partitionsPerTopic, subscriptions). It 
assumes that partition number starts from 0, and it constructs TopicPartition 
in the range of [0, partitionsPerTopic). 

This assumption is not correct. The correct way to handle it is to follow the 
same approach in producer's DefaultPartitioner, where it uses [0, 
numberOfPartition) as an index to the actual partition.

There are use cases where partition number may not start from zero. It can 
happen if users use advanced tooling to manually craft the partition number 
when creating topics.

This message was sent by Atlassian JIRA

Reply via email to