[ 
https://issues.apache.org/jira/browse/CALCITE-2621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16647551#comment-16647551
 ] 

Ruben Quesada Lopez edited comment on CALCITE-2621 at 10/12/18 7:00 AM:
------------------------------------------------------------------------

Ok, I can remove the function and extract the SemiJoin type for the 
LogicalCorrelate programatically:
{code:java}
RelNode newRel =
  LogicalCorrelate.create(left,
            relBuilder.build(),
            correlationId,
            requiredColumns.build(),
            join instanceof SemiJoin ? SemiJoinType.SEMI : 
SemiJoinType.of(join.getJoinType()));
{code}


was (Author: rubenql):
Ok, I can remove the function and extract the SemiJoin type for the 
LogicalCorrelate programatically:
{code}
RelNode newRel =
  LogicalCorrelate.create(left,
            relBuilder.build(),
            correlationId,
            requiredColumns.build(),
            join instanceof SemiJoin ? SemiJoinType.SEMI : 
SemiJoinType.of(join.getJoinType()));
{code}

> New rule: SemiJoinToCorrelateRule (SemiJoin => LogicalCorrelate)
> ----------------------------------------------------------------
>
>                 Key: CALCITE-2621
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2621
>             Project: Calcite
>          Issue Type: Improvement
>            Reporter: Ruben Quesada Lopez
>            Assignee: Julian Hyde
>            Priority: Major
>             Fix For: 1.18.0
>
>
> Similarly to JoinToCorrelateRule, in some contexts it might be interesting to 
> transform a SemiJoin into a LogicalCorrelate, for this purpose a 
> SemiJoinToCorrelateRule will be needed.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to