[ https://issues.apache.org/jira/browse/CALCITE-2404?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16535923#comment-16535923 ]
Stamatis Zampetakis commented on CALCITE-2404: ---------------------------------------------- The use-cases that I tested do not include LATERAL just access to record-typed fields. If I am not mistaken even a RexFieldAccess over a RexInputRef cannot be handled by the RexToLixTranslator. I have also the impression that RelStructuredTypeFlattener generates exactly such kind of projections (with a RexFieldAccess over a RexInputRef). > Accessing structured-types is not implemented by the runtime > ------------------------------------------------------------ > > Key: CALCITE-2404 > URL: https://issues.apache.org/jira/browse/CALCITE-2404 > Project: Calcite > Issue Type: Bug > Components: core > Affects Versions: 1.17.0 > Reporter: Stamatis Zampetakis > Assignee: Julian Hyde > Priority: Blocker > > Queries on tables containing structured types cannot be executed by the > Calcite runtime. A plan like the one that follows (taken from CALCITE-2220) > can be translated to neither Bindable nor EnumerableConvention. > > {noformat} > LogicalProject(EXPR$0=[$0]) > LogicalProject(EXPR$0$0=[ITEM($6, 1).EMPNO], EXPR$0$1=[ITEM($6, 1).ENAME], > EXPR$0$2=[ITEM($6, 1).DETAIL]) > LogicalProject(DEPTNO=[$0], NAME=[$1], TYPE=[$2.TYPE], DESC=[$2.DESC], > A=[$2.OTHERS.A], B=[$2.OTHERS.B], EMPLOYEES=[$3]) > LogicalTableScan(table=[[CATALOG, SALES, DEPT_NESTED]]) > {noformat} > > More precisely, if a logical plan contains a RexFieldAccess expression that > does not refer to a RexCorrelVariable it cannot be handled by the > RexToLixTranslator. The translation will fail when calling > [RexToLixTranslator#translate0|[https://github.com/apache/calcite/blob/5bbc501a565494442784f65870a20cd65a5016f4/core/src/main/java/org/apache/calcite/adapter/enumerable/RexToLixTranslator.java#L686]]. > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)