[ 
https://issues.apache.org/jira/browse/CALCITE-1732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Julian Hyde resolved CALCITE-1732.
----------------------------------
       Resolution: Fixed
    Fix Version/s: 1.13.0

Fixed in http://git-wip-us.apache.org/repos/asf/calcite/commit/14ee9f35. Thanks 
for the PR, [~godfreyhe]!

> IndexOutOfBoundsException when using LATERAL TABLE with more than one field
> ---------------------------------------------------------------------------
>
>                 Key: CALCITE-1732
>                 URL: https://issues.apache.org/jira/browse/CALCITE-1732
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: godfrey he
>            Assignee: Julian Hyde
>             Fix For: 1.13.0
>
>
> add a test case in {{SqlToRelConverterTest}}
> {code}
> @Test public void testCollectionTableWithLateral3() {
>     sql("select * from dept, lateral table(DEDUP(dept.deptno, 
> dept.name))").ok();
>   }
> {code}
> I get an exception:
> java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
>   at java.util.ArrayList.rangeCheck(ArrayList.java:635)
>   at java.util.ArrayList.get(ArrayList.java:411)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter$LookupContext.findRel(SqlToRelConverter.java:4894)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter$Blackboard.lookup(SqlToRelConverter.java:4122)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter$Blackboard.lookupExp(SqlToRelConverter.java:4072)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter.convertIdentifier(SqlToRelConverter.java:3419)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter.access$1800(SqlToRelConverter.java:207)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter$Blackboard.visit(SqlToRelConverter.java:4435)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter$Blackboard.visit(SqlToRelConverter.java:3794)
>   at org.apache.calcite.sql.SqlIdentifier.accept(SqlIdentifier.java:344)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter$Blackboard.convertExpression(SqlToRelConverter.java:4328)
>   at 
> org.apache.calcite.sql2rel.StandardConvertletTable$11.convertCall(StandardConvertletTable.java:257)
>   at 
> org.apache.calcite.sql2rel.SqlNodeToRexConverterImpl.convertCall(SqlNodeToRexConverterImpl.java:61)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter$Blackboard.visit(SqlToRelConverter.java:4426)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter$Blackboard.visit(SqlToRelConverter.java:3794)
>   at org.apache.calcite.sql.SqlCall.accept(SqlCall.java:137)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter$Blackboard.convertExpression(SqlToRelConverter.java:4328)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter.convertSelectList(SqlToRelConverter.java:3634)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter.convertSelectImpl(SqlToRelConverter.java:659)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter.convertSelect(SqlToRelConverter.java:616)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter.convertQueryRecursive(SqlToRelConverter.java:2951)
>   at 
> org.apache.calcite.sql2rel.SqlToRelConverter.convertQuery(SqlToRelConverter.java:552)
>   at 
> org.apache.calcite.test.SqlToRelTestBase$TesterImpl.convertSqlToRel(SqlToRelTestBase.java:564)
>   at 
> org.apache.calcite.test.SqlToRelTestBase$TesterImpl.assertConvertsTo(SqlToRelTestBase.java:673)
>   at 
> org.apache.calcite.test.SqlToRelConverterTest$Sql.convertsTo(SqlToRelConverterTest.java:2413)
>   at 
> org.apache.calcite.test.SqlToRelConverterTest$Sql.ok(SqlToRelConverterTest.java:2409)
>   at 
> org.apache.calcite.test.SqlToRelConverterTest.testCollectionTableWithLateral3(SqlToRelConverterTest.java:896)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to