[ https://issues.apache.org/jira/browse/KAFKA-7803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16749318#comment-16749318 ]
Guozhang Wang commented on KAFKA-7803: -------------------------------------- Generally speaking changing topic-configs on the fly should be okay. I've made a quick pass on TopicConfig, and one thing that we may need to pay attention is the retention policy related ones, like {{CLEANUP_POLICY_CONFIG}} and {{RETENTION_MS_CONFIG}} (if delete is used). Looking at the implementations of {{InternalTopicConfig}} like {{WindowedChangelogTopicConfig}}, today we always override on {{RETENTION_MS_CONFIG}}, but we actually allow users to override on {{CLEANUP_POLICY_CONFIG}} -- details are in the {{getProperties}} function. So I'd say when we get this feature to allow existing internal topic configs be overridden inside InternalTopicManager, we should as well enforce the retention policy related configs and now allow user overrides as well. With that, this is a good to have feature to add to Streams. > Kafka Streams internal topics config is not updated when the code is changed > ---------------------------------------------------------------------------- > > Key: KAFKA-7803 > URL: https://issues.apache.org/jira/browse/KAFKA-7803 > Project: Kafka > Issue Type: Improvement > Components: streams > Reporter: Tim Van Laer > Priority: Minor > > Considering the following state store definition: > {code:java} > ImmutableMap<String, String> changelogTopicConfig = new > ImmutableMap.Builder<String, String>() > .put(TopicConfig.SEGMENT_BYTES_CONFIG, String.valueOf(100 * 1024 * 1024)) > .build(); > builder.addStateStore( > > Stores.keyValueStoreBuilder(Stores.persistentKeyValueStore("store-example"), > Serdes.String(), Serdes.String()) > .withLoggingEnabled(changelogTopicConfig) > );{code} > The configuration for a changelog topic (segment size, max message size...) > is used when Kafka Streams create the internal topic (See > [InternalTopicManager|https://github.com/apache/kafka/blob/trunk/streams/src/main/java/org/apache/kafka/streams/processor/internals/InternalTopicManager.java]). > If I later decide to increase the segment size, I would update the value in > the code. However Kafka Streams currently won't apply this code change to the > internal topic config. This causes a confusing state where the code is > different from the actual runtime. > It would be convenient if Kafka Streams could reflect those changes to the > internal topic by updating the topic configuration. -- This message was sent by Atlassian JIRA (v7.6.3#76005)