dajac opened a new pull request, #23740:
URL: https://github.com/apache/kafka/pull/23740

   The consumer group coordinator can let a member keep using a partition
   that it no longer holds. This patch adds two tests to
   `ConsumerGroupHeartbeatRequestTest` that reproduce two such sequences
   with raw heartbeats. Both tests assert the current behavior.
   
   - `testUnreportedPartitionIsFreedOnFullHeartbeat`: a member that
     resends its full state while it is still taking a newly assigned
     partition reports an owned set without that partition. When the
     target assignment moves the partition to another member, the
     coordinator checks the revocation against that owned set, treats the
     partition as already revoked and frees it in the same heartbeat. Two
     consumers then own the partition at the same time.
   - `testCommitAcceptedForPartitionRevokedOnUnsubscribe`: a member that
     unsubscribes from a topic before the next target assignment can be
     computed revokes the topic's partitions without changing its epoch.
     Once another member gets one of those partitions, a late commit from
     the first member at its unchanged epoch is accepted, because the
     commit validation doesn't check the partitions when the epoch
     matches. The commit overwrites the other member's offset.
   
   I am working on fixes for both issues. Each fix will change its test to
   assert the expected behavior.
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to