mirror of https://github.com/apache/kafka.git
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 <ableegoldman@apache.org>
This commit is contained in:
parent
a448ddbecb
commit
1b4cffdcb7
|
@ -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>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>
|
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>
|
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>
|
</ul>
|
||||||
|
|
||||||
<h5><a id="upgrade_300_notable" href="#upgrade_300_notable">Notable changes in 3.0.0</a></h5>
|
<h5><a id="upgrade_300_notable" href="#upgrade_300_notable">Notable changes in 3.0.0</a></h5>
|
||||||
|
|
|
@ -105,13 +105,15 @@ public final class AssignorConfiguration {
|
||||||
case StreamsConfig.UPGRADE_FROM_21:
|
case StreamsConfig.UPGRADE_FROM_21:
|
||||||
case StreamsConfig.UPGRADE_FROM_22:
|
case StreamsConfig.UPGRADE_FROM_22:
|
||||||
case StreamsConfig.UPGRADE_FROM_23:
|
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;
|
return RebalanceProtocol.EAGER;
|
||||||
default:
|
default:
|
||||||
throw new IllegalArgumentException("Unknown configuration value for parameter 'upgrade.from': " + upgradeFrom);
|
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;
|
return RebalanceProtocol.COOPERATIVE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue