Details
Description
If the user calls wakeup() while a rebalance is pending, the join/sync will be left on the wire. Although the requests will eventually complete on a later call to poll(), since we have aborted the call to ensureActiveGroup(), the onJoinComplete() callback will never be invoked. This causes a spurious rebalance on the next poll() since we never received the assignment for the joined generation. This also affects Kafka Connect, which depends internally on the group management protocol and uses wakeup to break from poll() in order to handle requests.