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

Maksim Zhuravkov updated IGNITE-22092:
--------------------------------------
    Description: 
Rewriting correlated subqueries provides significant performance boost by 
removing redundant loops during execution and by allowing subsequent 
optimisations of flattened plans during planning.

P.S.

Apache calcite provides some means to decorrelate subqueries (via 
`RelDecorrelator`) but unfortunetly they are:
- produce incorrect results (see 
https://issues.apache.org/jira/browse/IGNITE-16493  where decorrelating 
subquery produces incorrect result because a resulting plan contains a join 
with `equality` instead of is `not distinct from` predicate (thus breaking 
queries for tables that contain NULLs).
- limited in scope.






  was:
Rewriting correlated subqueries provides significant performance boost by 
removing redundant loops during execution and by allowing subsequent 
optimisations of flattened plans during planning.

P.S.

Apache calcite provides some means to decorrelate subqueries 
(viaRelDecorrelator) but unfortunetly they are:
- produce incorrect results (see 
https://issues.apache.org/jira/browse/IGNITE-16493  where decorrelating 
subquery produces incorrect result because a resulting plan contains a join 
with `equality` instead of is `not distinct from` predicate (thus breaking 
queries for tables that contain NULLs).
- limited in scope.







> Sql. Implement subquery decorrelation.
> --------------------------------------
>
>                 Key: IGNITE-22092
>                 URL: https://issues.apache.org/jira/browse/IGNITE-22092
>             Project: Ignite
>          Issue Type: Improvement
>          Components: sql
>            Reporter: Maksim Zhuravkov
>            Priority: Minor
>              Labels: ignite-3
>
> Rewriting correlated subqueries provides significant performance boost by 
> removing redundant loops during execution and by allowing subsequent 
> optimisations of flattened plans during planning.
> P.S.
> Apache calcite provides some means to decorrelate subqueries (via 
> `RelDecorrelator`) but unfortunetly they are:
> - produce incorrect results (see 
> https://issues.apache.org/jira/browse/IGNITE-16493  where decorrelating 
> subquery produces incorrect result because a resulting plan contains a join 
> with `equality` instead of is `not distinct from` predicate (thus breaking 
> queries for tables that contain NULLs).
> - limited in scope.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to