Konstantin Orlov created CALCITE-7009: -----------------------------------------
Summary: AssertionError when converting query containing multiple correlated subqueries referencing different tables in FROM Key: CALCITE-7009 URL: https://issues.apache.org/jira/browse/CALCITE-7009 Project: Calcite Issue Type: Bug Components: core Affects Versions: 1.39.0 Reporter: Konstantin Orlov If SELECT list contains several correlated subqueries referencing different tables in FROM list, then AssertionError is thrown during sql-to-rel conversion phase: {code} // org.apache.calcite.test.SqlToRelConverterTest @Test void testMultipleCorrelatedSubQueriesInSelectReferencingDifferentTablesInFrom() { final String sql = "select\n" + "(select ename from emp where empno = empnos.empno) as emp_name,\n" + "(select name from dept where deptno = deptnos.deptno) as dept_name\n" + " from (values (1), (2)) as empnos(empno), (values (1), (2)) as deptnos(deptno)"; sql(sql).withExpand(false).ok(); } // Throws following error java.lang.AssertionError: All correlation variables should resolve to the same namespace. Prev ns=org.apache.calcite.sql.validate.AliasNamespace@2b3c7f6, new ns=org.apache.calcite.sql.validate.AliasNamespace@2803f6c9 at org.apache.calcite.sql2rel.SqlToRelConverter.getCorrelationUse(SqlToRelConverter.java:3147) at org.apache.calcite.sql2rel.SqlToRelConverter.convertNonAggregateSelectList(SqlToRelConverter.java:4843) at org.apache.calcite.sql2rel.SqlToRelConverter.convertSelectList(SqlToRelConverter.java:4765) at org.apache.calcite.sql2rel.SqlToRelConverter.convertSelectImpl(SqlToRelConverter.java:809) at org.apache.calcite.sql2rel.SqlToRelConverter.convertSelect(SqlToRelConverter.java:735) at org.apache.calcite.sql2rel.SqlToRelConverter.convertQueryRecursive(SqlToRelConverter.java:3939) {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)