[
https://issues.apache.org/jira/browse/CALCITE-2275?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vitalii Diravka updated CALCITE-2275:
-------------------------------------
Description:
Using logical NOT operator in Join condition leads to mistakenly push down this
condition. Then LogicalProject is created with RexCall expression. It prevents
for further inferring predicates (by using JoinPushTransitivePredicatesRule,
for instance).
Query example:
{code:sql}
select * from sales.emp d join sales.emp e on e.deptno = d.deptno and d.deptno
not in (4, 6)
{code}
was:Using logical NOT operator in Join condition leads to mistakenly push
down this condition. Then LogicalProject is created with RexCall expression. It
prevents for further inferring predicates (by using
JoinPushTransitivePredicatesRule, for instance).
> Using logical NOT operator in Join condition leads to mistakenly push down
> this condition.
> ------------------------------------------------------------------------------------------
>
> Key: CALCITE-2275
> URL: https://issues.apache.org/jira/browse/CALCITE-2275
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.16.0
> Reporter: Vitalii Diravka
> Assignee: Vitalii Diravka
> Priority: Major
> Fix For: 1.17.0
>
>
> Using logical NOT operator in Join condition leads to mistakenly push down
> this condition. Then LogicalProject is created with RexCall expression. It
> prevents for further inferring predicates (by using
> JoinPushTransitivePredicatesRule, for instance).
> Query example:
> {code:sql}
> select * from sales.emp d join sales.emp e on e.deptno = d.deptno and
> d.deptno not in (4, 6)
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)