[
https://issues.apache.org/jira/browse/CALCITE-7057?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated CALCITE-7057:
------------------------------------
Labels: pull-request-available (was: )
> NPE when decorrelating query containing nested correlated subqueries
> --------------------------------------------------------------------
>
> Key: CALCITE-7057
> URL: https://issues.apache.org/jira/browse/CALCITE-7057
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.40.0
> Reporter: Konstantin Orlov
> Priority: Major
> Labels: pull-request-available
>
> If SELECT list contains nested correlated subqueries, then AssertionError is
> thrown from {{RelDecorrelator}}:
> {code:java}
> // add following test case to core/src/test/resources/sql/scalar.iq
> # Nested scalar sub-queries
> select
> (select ename || ' from dept '
> || (select dname from dept where deptno = emp.deptno and
> emp.empno = empnos.empno)
> from emp
> ) as ename_from_dept
> from (values (7369), (7499)) as empnos(empno) order by 1;
> +----------+
> | EMP_NAME |
> +----------+
> | ALLEN |
> | SMITH |
> +----------+
> (2 rows)
> !ok
> // Throws following error (only part of the last "Caused by" presented for
> brevity)
> Caused by: java.lang.NullPointerException: cm.mapCorToCorRel.get($cor0)
> at java.base/java.util.Objects.requireNonNull(Objects.java:334)
> at
> org.apache.calcite.sql2rel.RelDecorrelator.getCorRel(RelDecorrelator.java:1152)
> at
> org.apache.calcite.sql2rel.RelDecorrelator.createValueGenerator(RelDecorrelator.java:1046)
> at
> org.apache.calcite.sql2rel.RelDecorrelator.decorrelateInputWithValueGenerator(RelDecorrelator.java:1252)
> at
> org.apache.calcite.sql2rel.RelDecorrelator.maybeAddValueGenerator(RelDecorrelator.java:1171)
> at
> org.apache.calcite.sql2rel.RelDecorrelator.decorrelateRel(RelDecorrelator.java:1377)
> at
> org.apache.calcite.sql2rel.RelDecorrelator.decorrelateRel(RelDecorrelator.java:1343)
> at jdk.internal.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)