Affects Version/s: None
Fix Version/s: 0.10.0.0
AbstractPartitionAssignor.assign has an ambiguous line in its documentation:
Does empty mean the topic has an entry with value zero, or that the entry is excluded from the map altogether? The current implementation in AbstractPartitionAssignor excludes the entry from partitionsPerTopic if the topic isn't in the metadata.
RoundRobinAssignorTest.testOneConsumerNonexistentTopic interprets emptiness as providing the topic with a zero value.
RangeAssignor interprets emptiness as excluding the entry from the map.
RangeAssignorTest.testOneConsumerNonexistentTopic interprets emptiness as providing the topic with a zero value.
I don't really have a preference in which direction we take. We just need to more clearly document what happens when the topic isn't in the metadata.