You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Boyang Chen (JIRA)" <ji...@apache.org> on 2018/06/05 15:07:00 UTC

[jira] [Created] (KAFKA-6995) Make config "internal.leave.group.on.close" public

Boyang Chen created KAFKA-6995:
----------------------------------

             Summary: Make config "internal.leave.group.on.close" public
                 Key: KAFKA-6995
                 URL: https://issues.apache.org/jira/browse/KAFKA-6995
             Project: Kafka
          Issue Type: Improvement
          Components: consumer, streams
            Reporter: Boyang Chen
            Assignee: Boyang Chen


We are proposing to make the config "internal.leave.group.on.close" public. The reason is that for heavy state application the sticky assignment won't work because each stream worker will leave group during rolling restart, and there is a possibility that some members are left and rejoined while others are still awaiting restart. This would then cause multiple rebalance because after the ongoing rebalance is done, we are expecting late members to rejoin and move state from `stable` to `prepareBalance`. To solve this problem, heavy state application needs to use this config to avoid member list update, so that at most one rebalance will be triggered at a proper time when all the members are rejoined during rolling restart. This should just be one line change.

Code here:

* <code>internal.leave.group.on.close</code>
 * Whether or not the consumer should leave the group on close. If set to <code>false</code> then a rebalance
 * won't occur until <code>session.timeout.ms</code> expires.
 *
 * <p>
 * Note: this is an internal configuration and could be changed in the future in a backward incompatible way
 *
 */
 static final String LEAVE_GROUP_ON_CLOSE_CONFIG = "internal.leave.group.on.close";



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)