You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Matthias J. Sax (JIRA)" <ji...@apache.org> on 2017/07/06 22:42:00 UTC

[jira] [Resolved] (KAFKA-4726) ValueMapper should have (read) access to key

     [ https://issues.apache.org/jira/browse/KAFKA-4726?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthias J. Sax resolved KAFKA-4726.
------------------------------------
    Resolution: Duplicate

See https://cwiki.apache.org/confluence/display/KAFKA/KIP-149%3A+Enabling+key+access+in+ValueTransformer%2C+ValueMapper%2C+and+ValueJoiner

> ValueMapper should have (read) access to key
> --------------------------------------------
>
>                 Key: KAFKA-4726
>                 URL: https://issues.apache.org/jira/browse/KAFKA-4726
>             Project: Kafka
>          Issue Type: Improvement
>          Components: streams
>    Affects Versions: 0.10.1.1
>            Reporter: Steven Schlansker
>            Assignee: Jeyhun Karimov
>              Labels: kip
>
> {{ValueMapper}} should have read-only access to the key for the value it is mapping.  Sometimes the value transformation will depend on the key.
> It is possible to do this with a full blown {{KeyValueMapper}} but that loses the promise that you won't change the key -- so you might introduce a re-keying phase that is totally unnecessary.  It also requires you to return an identity KeyValue object which costs something to construct (unless we are lucky and the optimizer elides it).
> [ If mapValues() is guaranteed to be no less efficient than map() the issue may be moot, but I presume there are some optimizations that are valid with the former but not latter. ]



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)