[ 
https://issues.apache.org/jira/browse/KAFKA-6035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17503213#comment-17503213
 ] 

Matthias J. Sax commented on KAFKA-6035:
----------------------------------------

Even if this ticket is finished, if you call `withLoggingDisabled` you tell 
Kafka Streams that the store is ephemeral and does not need to be recovered 
after a failure.

This feature will only avoid creating a separate changelog topic and reuse the 
output topic, if logging is enabled. We might do the same thing as for input 
table and only do the merge if topology optimization is enabled, but I guess 
it's TDB.

> Avoid creating changelog topics for state stores that are directly piped to a 
> sink topic
> ----------------------------------------------------------------------------------------
>
>                 Key: KAFKA-6035
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6035
>             Project: Kafka
>          Issue Type: Sub-task
>          Components: streams
>            Reporter: Guozhang Wang
>            Assignee: Jeyhun Karimov
>            Priority: Major
>
> Today Streams make all state stores to be backed by a changelog topic by 
> default unless users overrides it by {{disableLogging}} when creating the 
> state store / materializing the KTable. However there are a few cases where a 
> separate changelog topic would not be required as we can re-use an existing 
> topic for that. This ticket summarize a specific issue that can be optimized:
> Consider the case when a KTable is materialized and then sent directly into a 
> sink topic with the same key, e.g.
> {code}
> table1 = stream.groupBy(...).aggregate("state1").to("topic2");
> {code}
> Then we do not need to create a {{state1-changelog}} but can just use 
> {{topic2}} as its changelog.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to