[ 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)