lianetm commented on code in PR #15737:
URL: https://github.com/apache/kafka/pull/15737#discussion_r1569396277


##########
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:
   do we understand why this situation is happening? Is it related maybe to the 
mismatch assignment failure we've seen elsewhere in the tests? My point is just 
to make sure we're not hiding the real failure with this change. I wouldn't 
expect that the consumer would ever receive a partition to revoke if it was not 
previously assigned right?



-- 
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

Reply via email to