[
https://issues.apache.org/jira/browse/KAFKA-4217?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15555654#comment-15555654
]
Elias Levy commented on KAFKA-4217:
-----------------------------------
It would seem to be the same request: allow a transform that emits multiple
values.
Like Fodor, I am using {{ProcessorContext.forward}} to emit multiple values
from {{Transformer.transform}}. Unlike him, I return {{null}} from the method
instead of returning dummy values that must be filtered.
At the very least, it should be documented that one can use
{{ProcessorContext.forward}} to emit multiple values from
{{Transformer.transform}}. Ideally, {{Transformer.transform}} would be
modified to allow returning multiple values, or a variant of {{Transformer}}
would allow you to do so.
> KStream.transform equivalent of flatMap
> ---------------------------------------
>
> Key: KAFKA-4217
> URL: https://issues.apache.org/jira/browse/KAFKA-4217
> Project: Kafka
> Issue Type: Improvement
> Components: streams
> Affects Versions: 0.10.0.1
> Reporter: Elias Levy
> Assignee: Guozhang Wang
>
> {{KStream.transform}} gives you access to state stores while allowing you to
> return zero or one transformed {{KeyValue}}. Alas, it is unclear what method
> you should use if you want to access state stores and return zero or multiple
> {{KeyValue}}. Presumably you can use {{transform}}, always return {{null}},
> and use {{ProcessorContext.forward}} to emit {{KeyValues}}.
> It may be good to introduce a {{transform}}-like {{flatMap}} equivalent, or
> allow store access from other {{KStream}} methods, such as {{flatMap}} itself.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)