This is an automated email from the ASF dual-hosted git repository.

mihaibudiu pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/calcite.git


The following commit(s) were added to refs/heads/main by this push:
     new f87c6d3f72 Minor: disable Volcano optimization step for test case 
whose optimization takes very long
f87c6d3f72 is described below

commit f87c6d3f72004eb4c14d4b2c9eabdb80eb21e20d
Author: Mihai Budiu <[email protected]>
AuthorDate: Wed Nov 11 17:44:14 2026 -0800

    Minor: disable Volcano optimization step for test case whose optimization 
takes very long
---
 core/src/test/resources/sql/lateral.iq | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/core/src/test/resources/sql/lateral.iq 
b/core/src/test/resources/sql/lateral.iq
index d2f37adccf..90ab72efac 100644
--- a/core/src/test/resources/sql/lateral.iq
+++ b/core/src/test/resources/sql/lateral.iq
@@ -178,9 +178,15 @@ from dept,
 # [CALCITE-7911] FROM a, b JOIN c is parsed incorrectly
 # LATERAL on the right of a join sees the item on the left of the join (v)
 # and the item before the ',' (dept). Same result on PostgreSQL 14.
-# Note: this test can lead to CI timeout with the new decorrelator,
-# so it is only enabled with the old one; to be investigated in CALCITE-7928.
-!if (use_old_decorr) {
+#
+# [CALCITE-7928] Volcano optimizer takes a very long time for a cross join
+# lateral query
+# The top-down decorrelator gives the planner a plan with 5 joins.
+# On this plan, the join reordering rules and PROJECT_MERGE make many
+# duplicate Projects, and planning can take more than one minute.
+# Without PROJECT_MERGE, planning takes less than one second.
+!set planner-rules "
+-PROJECT_MERGE"
 with dept (deptno, dname)
     as (values (10, 'ACCOUNTING'), (20,'RESEARCH')),
   emp (empno, deptno, ename)
@@ -200,7 +206,7 @@ from dept,
 (2 rows)
 
 !ok
-!}
+!set planner-rules original
 
 # As above, with LEFT JOIN; a row of v that has no match in emp still appears
 # once for each dept, with a null ENAME. Same result on PostgreSQL 14.

Reply via email to