You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "John Roesler (JIRA)" <ji...@apache.org> on 2019/04/04 17:08:00 UTC
[jira] [Created] (KAFKA-8189) Streams should have an option to
require names for stateful components
John Roesler created KAFKA-8189:
-----------------------------------
Summary: Streams should have an option to require names for stateful components
Key: KAFKA-8189
URL: https://issues.apache.org/jira/browse/KAFKA-8189
Project: Kafka
Issue Type: Improvement
Components: streams
Reporter: John Roesler
With the introduction of [https://cwiki.apache.org/confluence/display/KAFKA/KIP-372%3A+Naming+Repartition+Topics+for+Joins+and+Grouping] , in conjunction with naming state via Materialized and Suppressed, Streams users have the ability to alter their topologies and restart without losing track of operator state or repartition topics.
It would be a robust pattern to always name stateful components, but this pattern is vulnerable to simple coding and configuration mistakes. If developers lose vigilence even once and deploy a topology with *any* state not named, the only way to correct it is with an application reset.
Streams can support topology compatibility by offering a config option to require names on all stateful components. Then, if someone accidentally adds an anonymous stateful operator, Streams would throw an exception instead of generating a name, preserving the integrity of the application.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)