kafka-jira mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Panuwat Anawatmongkhon (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (KAFKA-6138) Simplify StreamsBuilder#addGlobalStore
Date Tue, 05 Dec 2017 18:56:01 GMT

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

Panuwat Anawatmongkhon commented on KAFKA-6138:

[~mjsax] Since I am pretty new to kafka stream, I don't really understand why we have addStateStore
and addGlobalStore in DSL API, and how to use it. I have tried to find information in discussion
threads but I still cannot find any discussion on adding these two method. Can you suggest
me on this. with document, or some explanation will be very appreciate.

> Simplify StreamsBuilder#addGlobalStore
> --------------------------------------
>                 Key: KAFKA-6138
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6138
>             Project: Kafka
>          Issue Type: Bug
>          Components: streams
>    Affects Versions: 1.0.0
>            Reporter: Matthias J. Sax
>            Assignee: Panuwat Anawatmongkhon
>              Labels: beginner, needs-kip, newbie
> {{StreamsBuilder#addGlobalStore}} is conceptually a 1:1 copy of {{Topology#addGlobalStore}},
that would follow DSL design principles though. Atm, {{StreamsBuilder#addGlobalStore}} does
not follow provide a good user experience as it forces users to specify names for processor
names -- processor name are a Processor API detail should be hidden in the DSL. The current
API is the following:
> {noformat}
>     public synchronized StreamsBuilder addGlobalStore(final StoreBuilder storeBuilder,
>                                                       final String topic,
>                                                       final String sourceName,
>                                                       final Consumed consumed,
>                                                       final String processorName,
>                                                       final ProcessorSupplier stateUpdateSupplier)
> {noformat}
> We should remove the two parameters {{sourceName}} and {{processorName}}. To be backward
compatible, the current method must be deprecated and a new method should be added with reduced
number of parameters. This is a public API change and thus requires a KIP. Details about the
KIP process can be found in the wiki: https://cwiki.apache.org/confluence/display/KAFKA/Kafka+Improvement+Proposals

This message was sent by Atlassian JIRA

View raw message