[ https://issues.apache.org/jira/browse/STORM-2850?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stig Rohde Døssing resolved STORM-2850. --------------------------------------- Resolution: Fixed > ManualPartitionSubscription assigns new partitions before calling > onPartitionsRevoked > ------------------------------------------------------------------------------------- > > Key: STORM-2850 > URL: https://issues.apache.org/jira/browse/STORM-2850 > Project: Apache Storm > Issue Type: Bug > Components: storm-kafka-client > Affects Versions: 2.0.0, 1.2.0 > Reporter: Stig Rohde Døssing > Assignee: Stig Rohde Døssing > Labels: pull-request-available > Fix For: 2.0.0, 1.2.0 > > Time Spent: 1h > Remaining Estimate: 0h > > ManualPartitionSubscription does partition assignment updates in the wrong > order. It calls KafkaConsumer.assign, then onPartitionsRevoked and last > onPartitionsAssigned. The order should be onPartitionsRevoked, then assign, > then onPartitionsAssigned. > onPartitionsRevoked has to be called before we reassign partitions, because > we try to commit offsets for the revoked partitions. If we try to commit to a > partition the consumer is not assigned, it will throw an exception. The > onRevoke, assign, onAssign order is also more in line with the javadoc for > ConsumerRebalanceListener, which specifies that onRevoke should be called > before the partition rebalance begins. -- This message was sent by Atlassian JIRA (v6.4.14#64029)