You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Guozhang Wang (Jira)" <ji...@apache.org> on 2021/01/26 19:40:00 UTC

[jira] [Commented] (KAFKA-12242) Decouple state store materialization enforcement from name/serde provider

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

Guozhang Wang commented on KAFKA-12242:
---------------------------------------

One idea is adding a flag parameter in Materialized to indicate whether it is “enforced” or not, and by default it is true for compatibility. Some syntax sugar could look like this:

{code}
Materialized.ifNeeded().as()..
{code}

When users specify it, then it would not enforce materialization, but only provide the name/serde/store supplier when Streams decides to do so.

> Decouple state store materialization enforcement from name/serde provider
> -------------------------------------------------------------------------
>
>                 Key: KAFKA-12242
>                 URL: https://issues.apache.org/jira/browse/KAFKA-12242
>             Project: Kafka
>          Issue Type: Improvement
>          Components: streams
>            Reporter: Guozhang Wang
>            Priority: Major
>
> Many users of Streams would want the following: let the Streams runtime to decide whether or not to materialize a state store; AND if it decides to do so, use the store name / serdes I provided ahead of time, if not, then nothing happens (the provided store name and serdes can just be dropped).
> However, Streams today take `Materialized` as an indicator to enforce the materialization. We should think of a way for users to optionally decouple materialization enforcement from name/serde provider.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)