Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
2.7.0
Description
As the title suggests, the #onJoinPrepare callback is not always invoked before a member (re)joins the group, but only once when it first enters the rebalance. This means that any updates or events that occur during the join phase can be lost in the internal state: for example, clearing the SubscriptionState (and thus the "ownedPartitions" that are used for cooperative rebalancing) after losing its memberId during a rebalance.
We should reset the `needsJoinPrepare` flag inside the resetStateAndRejoin() method
Attachments
Issue Links
- causes
-
KAFKA-12984 Cooperative sticky assignor can get stuck with invalid SubscriptionState input metadata
-
- Resolved
-
- fixes
-
KAFKA-12896 Group rebalance loop caused by repeated group leader JoinGroups
-
- Resolved
-
- supercedes
-
KAFKA-12920 Consumer's cooperative sticky assignor need to clear generation / assignment data upon `onPartitionsLost`
-
- Resolved
-
- links to