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:
select * from sales.emp d join sales.emp e on e.deptno = d.deptno and d.deptno not in (4, 6)
Attachments
Issue Links
- Is contained by
-
DRILL-6350 Umbrella jira which tracks issues connected to Transitive Closure Inference
- Open
- relates to
-
DRILL-6173 Support transitive closure during filter push down and partition pruning
- Resolved
- links to