You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by GitBox <gi...@apache.org> on 2021/11/16 05:50:00 UTC

[GitHub] [kafka] ableegoldman commented on a change in pull request #11490: KAFKA-13439: Deprecate eager rebalance protocol in kafka stream

ableegoldman commented on a change in pull request #11490:
URL: https://github.com/apache/kafka/pull/11490#discussion_r749923117



##########
File path: streams/src/main/java/org/apache/kafka/streams/processor/internals/assignment/AssignorConfiguration.java
##########
@@ -105,13 +105,15 @@ public RebalanceProtocol rebalanceProtocol() {
                 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("Eagar rebalancing protocol is deprecated in Kafka Stream since V3.1, and will not get supported" +
+                        "in future release. Please remove the 'upgrade.from' setting soon.");

Review comment:
       ```suggestion
                       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.");
   ```

##########
File path: docs/upgrade.html
##########
@@ -26,6 +26,8 @@ <h5><a id="upgrade_310_notable" href="#upgrade_310_notable">Notable changes in 3
         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>Eagar rebalancing protocol is deprecated in Kafka Stream since V3.1, and will not get supported in future release.
+        Please remove the <code>upgrade.from</code> setting soon.</li>

Review comment:
       I think we should be a little more specific about how this does and doesn't affect users, and a little less specific about the deprecation -- if we say this is deprecated since 3.1 then we're more likely to have to commit to waiting for the full usual deprecation period AND the next major version bump. But technically, continuing to support EAGER was always intended to be temporary ever since COOPERATIVE was introduced, we just needed to give users an upgrade path and also initially a way to disable COOPERATIVE if serious bugs were found after it was first rolled out. 
   
   I think we should instead position 3.1 as (close to, if not exactly) the _last_ version in which EAGER will be available, not the first version in which it's deprecated. Kind of a fine line, but maybe something like
   ```suggestion
       <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 will need to follow a slightly different upgrade path if they attempt to upgrade from 2.3 or below to a version beyond 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. </li>
   ```




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org