[
https://issues.apache.org/jira/browse/CALCITE-2417?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16546873#comment-16546873
]
Benoit Hanotte commented on CALCITE-2417:
-----------------------------------------
I pushed a PR that seems to address the issue at
[https://github.com/apache/calcite/pull/761]
However I am not sure how to correctly test this. I added a test case that
allows reproducing the issue and validating the fix in this PR but it requires
a lot of boiler plate to recreate a schema with nested structs.
> Select * on table with nested struct throws ClassCastException: RexInputRef
> cannot be cast to RexCorrelVariable
> ---------------------------------------------------------------------------------------------------------------
>
> Key: CALCITE-2417
> URL: https://issues.apache.org/jira/browse/CALCITE-2417
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.16.0, next
> Reporter: Benoit Hanotte
> Assignee: Julian Hyde
> Priority: Major
>
> Trying to convert the physical plan of a _select *_ query on a table with a
> nested struct throws ClassCastException as RexInputRef cannot be cast to
> RexCorrelVariable:
>
> _Caused by: java.lang.ClassCastException: org.apache.calcite.rex.RexInputRef
> cannot be cast to org.apache.calcite.rex.RexCorrelVariable_
> _at
> org.apache.calcite.rel.rel2sql.SqlImplementor$Context.toSql(SqlImplementor.java:446)_
> _at
> org.apache.calcite.rel.rel2sql.RelToSqlConverter.visit(RelToSqlConverter.java:182)_
> _... 38 more_
>
> You may find a test case to reproduce the issue at
> [https://github.com/BenoitHanotte/calcite/commit/fd879310efab2858e33e06a9d666c106763e36db]
>
> This is likely due to the cast to RexCorrelVariable not being done on the
> referenced expression of RexInputRef accessible through
> RexFieldAccess.getReferenceExpr()
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)