You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Roman Kondakov (Jira)" <ji...@apache.org> on 2020/06/01 15:30:00 UTC

[jira] [Updated] (IGNITE-12913) Calcite integration: Add semi join remove rule to the planner

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

Roman Kondakov updated IGNITE-12913:
------------------------------------
    Priority: Minor  (was: Major)

> Calcite integration: Add semi join remove rule to the planner
> -------------------------------------------------------------
>
>                 Key: IGNITE-12913
>                 URL: https://issues.apache.org/jira/browse/IGNITE-12913
>             Project: Ignite
>          Issue Type: Improvement
>          Components: sql
>            Reporter: Roman Kondakov
>            Priority: Minor
>
> We need to add  next rules to planner
>  * FilterJoinRule,
>  * JoinAddRedundantSemiJoinRule,
>  * SemiJoinRemoveRule
> In order to be able to make this transformation for the query:
> {noformat}
> "select e.ename from emp e, dept d\n"
>         + "where e.deptno = d.deptno"
> BEFORE=
> LogicalProject(ENAME=[$1])
>   LogicalFilter(condition=[=($3, $5)])
>     LogicalJoin(condition=[true], joinType=[inner])
>       IgniteTableScan(table=[[PUBLIC, EMP]])
>       IgniteTableScan(table=[[PUBLIC, DEPT]])
> AFTER=
> IgniteProject(ENAME=[$1])
>   IgniteJoin(condition=[=($3, $5)], joinType=[inner])
>     IgniteTableScan(table=[[PUBLIC, EMP]])
>     IgniteTableScan(table=[[PUBLIC, DEPT]])
> {noformat}
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)