[
https://issues.apache.org/jira/browse/FLINK-2644?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14738299#comment-14738299
]
Gyula Fora commented on FLINK-2644:
-----------------------------------
Flink streaming uses hash partitioning on the selected key, so I think this
should be fine. When you have multiple inputs all grouped they use their own
key selector instance anyway.
but this should work well as long as the user understands the expected
behaviour (let's say we restrict the two keys to be of same type):
input1.keyBy(0).union(input2.keyBy(1)).map(statefulmap)
> State partitioning does not respect the different partitioning of multiple
> inputs
> ---------------------------------------------------------------------------------
>
> Key: FLINK-2644
> URL: https://issues.apache.org/jira/browse/FLINK-2644
> Project: Flink
> Issue Type: Bug
> Components: Streaming
> Reporter: Gyula Fora
>
> Currently state partitioning is only available for one-input stream operators
> and even for those, the partitioning will only depend on the first input.
> This happens because the keyselector used to extract the partitioning key
> from each element is used from the first input stream. We need to make sure
> that for each input stream the corresponding key selector is used.
> To do this, ctx.nextRecord(record), should be extended by adding a parameter
> denoting the index of the input channel which can be used by the partitioner
> to select the appropriate key selector.
> The same mechanics can be extended to allow state partitioning for TwoInput
> stream operators as well.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)