[
https://issues.apache.org/jira/browse/CALCITE-6126?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17790290#comment-17790290
]
Paul Jackson edited comment on CALCITE-6126 at 11/27/23 11:07 PM:
------------------------------------------------------------------
This can be worked around with an alias for the field name by removing this
line from the end of {{{}org.apache.calcite.sql.SqlOverOperator#deriveType{}}}:
{{ validator.setValidatedNodeType(agg, ret);}}
was (Author: pauljackson123):
This can be worked around with an alias for the field name after CALCITE-6044,
which removed this line from the end of
{{{}org.apache.calcite.sql.SqlOverOperator#deriveType{}}}:
{{ validator.setValidatedNodeType(agg, ret);}}
> Return type check fails with OVER
> ---------------------------------
>
> Key: CALCITE-6126
> URL: https://issues.apache.org/jira/browse/CALCITE-6126
> Project: Calcite
> Issue Type: Bug
> Components: core
> Reporter: Paul Jackson
> Priority: Major
>
> The following {{RelMetadataTest}} test fails:
> {{@Test void testOverNoPartitioning() {}}
> {{ sql("select max(empno) over (rows between 2 preceding and 0 following)
> from emp")}}
> {{ .assertThatAreColumnsUnique(bitSetOf(0), is(false))}}
> {{ .assertThatUniqueKeysAre();}}
> {{}}}
> With this error:
> {{java.lang.AssertionError: Conversion to relational algebra failed to
> preserve datatypes:}}
> {{validated type:}}
> {{RecordType(INTEGER EXPR$0) NOT NULL}}
> {{converted type:}}
> {{RecordType(INTEGER NOT NULL EXPR$0) NOT NULL}}
> {{rel:}}
> {{LogicalProject(EXPR$0=[MAX($0) OVER ()])}}
> {{ LogicalTableScan(table=[[CATALOG, SALES, EMP]])}}
> {{ at
> org.apache.calcite.sql2rel.SqlToRelConverter.checkConvertedType(SqlToRelConverter.java:507)}}
> {{ at
> org.apache.calcite.sql2rel.SqlToRelConverter.convertQuery(SqlToRelConverter.java:622)}}
> {{ at
> org.apache.calcite.sql.test.AbstractSqlTester.convertSqlToRel2(AbstractSqlTester.java:541)}}
> {{ at
> org.apache.calcite.sql.test.SqlTester.convertSqlToRel(SqlTester.java:291)}}
> {{ at
> org.apache.calcite.test.RelMetadataFixture.sqlToRel(RelMetadataFixture.java:189)}}
> {{ at
> org.apache.calcite.test.RelSupplier$SqlRelSupplier.apply2(RelSupplier.java:104)}}
> {{ at
> org.apache.calcite.test.RelMetadataFixture.toRel(RelMetadataFixture.java:195)}}
> {{ at
> org.apache.calcite.test.RelMetadataFixture.assertThatAreColumnsUnique(RelMetadataFixture.java:508)}}
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)