This is an automated email from the ASF dual-hosted git repository. ableegoldman pushed a commit to branch 3.1 in repository https://gitbox.apache.org/repos/asf/kafka.git
The following commit(s) were added to refs/heads/3.1 by this push: new 86e17f5 KAFKA-13439: Deprecate eager rebalance protocol in kafka stream (#11490) 86e17f5 is described below commit 86e17f5f1b43a9e38489fdbcafd1ee858efc75a1 Author: Luke Chen <show...@gmail.com> AuthorDate: Wed Nov 17 19:05:19 2021 +0800 KAFKA-13439: Deprecate eager rebalance protocol in kafka stream (#11490) Deprecate eager rebalancing protocol in kafka streams and log warning message when upgrade.from is set to 2.3 or lower. Also add a note in upgrade doc to prepare users for the removal of eager rebalancing support Reviewers: Anna Sophie Blee-Goldman <ableegold...@apache.org> --- docs/upgrade.html | 10 ++++++++++ .../processor/internals/assignment/AssignorConfiguration.java | 6 ++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/docs/upgrade.html b/docs/upgrade.html index 7bdc2e8..d61d153 100644 --- a/docs/upgrade.html +++ b/docs/upgrade.html @@ -26,6 +26,16 @@ and <code>iotime-total</code>. Please use <code>bufferpool-wait-time-ns-total</code>, <code>io-wait-time-ns-total</code>, and <code>io-time-ns-total</code> instead. See <a href="https://cwiki.apache.org/confluence/display/KAFKA/KIP-773%3A+Differentiate+consistently+metric+latency+measured+in+millis+and+nanos">KIP-773</a> for more details.</li> + <li>The cooperative rebalancing protocol has been the default since 2.4, but we have continued to support the + eager rebalancing protocol to provide users an upgrade path. This support will be dropped in a future release, + so any users still on the eager protocol should prepare to finish upgrading their applications to the cooperative protocol in version 3.1. + This only affects users who are still on a version older than 2.4, and users who have upgraded already but have not yet + removed the <code>upgrade.from</code> config that they set when upgrading from a version below 2.4. + Users fitting into the latter case will simply need to unset this config when upgrading beyond 3.1, + while users in the former case will need to follow a slightly different upgrade path if they attempt to upgrade from 2.3 or below to a version above 3.1. + Those applications will need to go through a bridge release, by first upgrading to a version between 2.4 - 3.1 and setting the <code>upgrade.from</code> config, + then removing that config and upgrading to the final version above 3.1. See <a href="https://issues.apache.org/jira/browse/KAFKA-8575">KAFKA-8575</a> + for more details.</li> </ul> <h5><a id="upgrade_300_notable" href="#upgrade_300_notable">Notable changes in 3.0.0</a></h5> diff --git a/streams/src/main/java/org/apache/kafka/streams/processor/internals/assignment/AssignorConfiguration.java b/streams/src/main/java/org/apache/kafka/streams/processor/internals/assignment/AssignorConfiguration.java index 8e4794e..a71c2fb 100644 --- a/streams/src/main/java/org/apache/kafka/streams/processor/internals/assignment/AssignorConfiguration.java +++ b/streams/src/main/java/org/apache/kafka/streams/processor/internals/assignment/AssignorConfiguration.java @@ -105,13 +105,15 @@ public final class AssignorConfiguration { case StreamsConfig.UPGRADE_FROM_21: case StreamsConfig.UPGRADE_FROM_22: case StreamsConfig.UPGRADE_FROM_23: - log.info("Eager rebalancing enabled now for upgrade from {}.x", upgradeFrom); + log.info("Eager rebalancing protocol is enabled now for upgrade from {}.x", upgradeFrom); + log.warn("The eager rebalancing protocol is deprecated and will stop being supported in a future release." + + " Please be prepared to remove the 'upgrade.from' config soon."); return RebalanceProtocol.EAGER; default: throw new IllegalArgumentException("Unknown configuration value for parameter 'upgrade.from': " + upgradeFrom); } } - log.info("Cooperative rebalancing enabled now"); + log.info("Cooperative rebalancing protocol is enabled now"); return RebalanceProtocol.COOPERATIVE; }