calcite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chunhui Shi <>
Subject Re: Infinite loop with JoinPushTransitivePredicatesRule
Date Fri, 02 Mar 2018 17:42:20 GMT
Could you file correspondent JIRAs to both Calcite and Drill with detailed repro steps? This
sounds a bug to me. I think this is an issue. We are seeing some stuck planning when run on
latest Calcite with Drill too - not sure if this is relevant though. We could exchange details

From: Vitalii Diravka <>
Sent: Thursday, March 1, 2018 4:10:31 PM
Subject: Infinite loop with JoinPushTransitivePredicatesRule

Hi all!

I got the infinite loop while using FilterIntoJoinRule +
JoinPushTransitivePredicatesRule in HEP planner for some correlated
queries, for instance:
*select d.deptno from sales.emp d where d.deptno IN (select e.deptno from
sales.emp e where e.deptno = d.deptno or e.deptno = 4)*

I have a reproduce in Calcite. We always get HepRelVertex for one side of
LogicalJoin relNode or LogicalFilter, therefore the rule is fired every
time and infinitely in result.

I've noticed that the rule works fine after JoinToCorrelateRule. But I
think this is not a decision for using JoinPushTransitivePredicatesRule,
even from the performance perspective.

How I can resolve it or maybe I missed something else?

Kind regards

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message