kirktrue commented on code in PR #15737: URL: https://github.com/apache/kafka/pull/15737#discussion_r1575365134
########## tests/kafkatest/services/verifiable_consumer.py: ########## @@ -140,22 +150,32 @@ class IncrementalAssignmentConsumerEventHandler(ConsumerEventHandler): def __init__(self, node, verify_offsets, idx): super().__init__(node, verify_offsets, idx) - def handle_partitions_revoked(self, event): + def handle_partitions_revoked(self, event, node, logger): self.revoked_count += 1 self.state = ConsumerState.Rebalancing self.position = {} + revoked = [] + for topic_partition in event["partitions"]: - topic = topic_partition["topic"] - partition = topic_partition["partition"] - self.assignment.remove(TopicPartition(topic, partition)) + tp = _create_partition_from_dict(topic_partition) - def handle_partitions_assigned(self, event): + if tp in self.assignment: + self.assignment.remove(tp) + revoked.append(tp) + else: + logger.warn("Could not remove topic partition %s from assignment as it was not previously assigned to %s" % (tp, node.account.hostname)) Review Comment: @lianetm—I changed the logging to an `assert` that provides useful information for troubleshooting: ```python tp = _create_partition_from_dict(topic_partition) assert tp in self.assignment, \ "Topic partition %s cannot be revoked from %s as it was not previously assigned to that consumer" % \ (tp, node.account.hostname) self.assignment.remove(tp) ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org