[
https://issues.apache.org/jira/browse/FLINK-2576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14908166#comment-14908166
]
ASF GitHub Bot commented on FLINK-2576:
---------------------------------------
Github user fhueske commented on the pull request:
https://github.com/apache/flink/pull/1138#issuecomment-143252740
As I said in my previous comments, I would prefer to support projection
joins initially.
Instead, it would be good, if we could ensure by API design that an outer
join is always completed with an `with(JoinFunction)` call. One way to do this
would be to return a special `OuterJoinOperatorSetsPredicate` object when
`.where()` is called. This `OuterJoinOperatorSetsPredicate` does not return a
`JoinOperator` when `equalTo()` is called but an unfinished outer join that
only allows to call `with()`. That way, the regular join API would remain
stable. Or do you have a better idea to model the API in the right way?
If we don't allow DefaultJoin and ProjectJoin for outer joins, we can also
revert the corresponding changes.
> Add outer joins to API and Optimizer
> ------------------------------------
>
> Key: FLINK-2576
> URL: https://issues.apache.org/jira/browse/FLINK-2576
> Project: Flink
> Issue Type: Sub-task
> Components: Java API, Optimizer, Scala API
> Reporter: Ricky Pogalz
> Priority: Minor
> Fix For: pre-apache
>
>
> Add left/right/full outer join methods to the DataSet APIs (Java, Scala) and
> to the optimizer of Flink.
> Initially, the execution strategy should be a sort-merge outer join
> (FLINK-2105) but can later be extended to hash joins for left/right outer
> joins.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)