...
Current state: Under Discussion
Discussion thread: here
JIRA: KAFKA-6874
Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast).
...
This KIP will add a new config "enable.topology.optimization" to the StreamsConfig
class. Setting ENABLE_TOPOLOGY_OPTIMIZATION
to any String value "true" will enable optimization, setting this configuration to null
disables optimization and is the default settingto "false" or no value at all disables optimization. The default setting is "false".
Code Block | ||||
---|---|---|---|---|
| ||||
public static final Stringboolean ENABLE_TOPOLOGY_OPTIMIZATION = "enable.topology.optimization" private static final String ENABLE_TOPOLOGY_OPTIMIZATION_DOC = "A configuration telling Kafka Streams if it should optimize the topology, nullfalse by default" |
Compatibility, Deprecation, and Migration Plan
There is no backward compatibility issue as we are not deprecating or changing any public API.
Since the default value is false, the underlying change should be transparent to the user. Users , with no impact if optimization is turned off.
The impact of turning on optimization may result in a different topology than as initially written. As a result, users electing to use optimization should see the same results from their topology with no changes to their current code.plan for shutting down all instances, cleaning up any local state and internal topics using the Streams-reset tool then starting the application again with optimization turned on via configs.
Rejected Alternatives
None