[
https://issues.apache.org/jira/browse/KAFKA-19974?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
David Jacot resolved KAFKA-19974.
---------------------------------
Reviewer: David Jacot
Resolution: Fixed
> Partitions can be assigned to more than one member in the same epoch
> --------------------------------------------------------------------
>
> Key: KAFKA-19974
> URL: https://issues.apache.org/jira/browse/KAFKA-19974
> Project: Kafka
> Issue Type: Bug
> Components: group-coordinator
> Reporter: Sean Quah
> Assignee: Sean Quah
> Priority: Blocker
> Fix For: 4.2.0
>
>
> NB: This bug is not about partitions being assigned to more than one member
> simultaneously.
> The change for KAFKA-19431 introduced a case where two different members
> could be assigned a partition in the same epoch (but not at the same time).
> When transitioning from UNREVOKED_PARTITIONS to UNREVOKED_PARTITIONS, we bump
> the member epoch. However, we cannot tell whether we had unrevoked partitions
> due to an unsubscription or an assignment change. When the unrevoked
> partitions are due to an unsubscription, we may bump to an epoch where other
> partitions are supposed to be assigned to a different member.
> Example:
> A group contains two members, both stable at epoch 10. The target assignment
> is at epoch 10.
> # Member A unsubscribes from topic bar at epoch 10. It enters
> UNREVOKED_PARTITIONS at epoch 10 { assigned partitions: [foo], pending
> revocation: [bar] }
> # A new target assignment for epoch 11 moves partition foo to member B.
> # Member A heartbeats at epoch 10, yielding bar. We try to reconcile to the
> target assignment and it enters UNREVOKED_PARTITIONS again, at epoch 11 {
> assigned partitions: [], pending revocation: [foo] }
> # Member A yields topic foo.
> # Member B is assigned topic foo at epoch 11 \{ assigned partitions [foo] }
--
This message was sent by Atlassian Jira
(v8.20.10#820010)