[
https://issues.apache.org/jira/browse/FLINK-5414?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15875296#comment-15875296
]
ASF GitHub Bot commented on FLINK-5414:
---------------------------------------
Github user haohui commented on a diff in the pull request:
https://github.com/apache/flink/pull/3338#discussion_r102125031
--- Diff:
flink-libraries/flink-table/src/test/scala/org/apache/flink/table/ExpressionReductionTest.scala
---
@@ -155,15 +155,15 @@ class ExpressionReductionTest extends TableTestBase {
"DataSetCalc",
batchTableNode(0),
term("select",
- "13 AS _c0",
+ "CAST(13) AS _c0",
--- End diff --
Just played around a little bit. I think the problem is that the advanced
types are not properly canonized. Using the following diff can pass all tests
in `ArrayTypeTest`:
```
---
a/flink-libraries/flink-table/src/main/scala/org/apache/flink/table/calcite/FlinkTypeFactory.scala
+++
b/flink-libraries/flink-table/src/main/scala/org/apache/flink/table/calcite/FlinkTypeFactory.scala
@@ -133,12 +133,18 @@ class FlinkTypeFactory(typeSystem: RelDataTypeSystem)
extends JavaTypeFactoryImp
override def createTypeWithNullability(
relDataType: RelDataType,
nullable: Boolean)
- : RelDataType = relDataType match {
- case composite: CompositeRelDataType =>
- // at the moment we do not care about nullability
- composite
- case _ =>
- super.createTypeWithNullability(relDataType, nullable)
+ : RelDataType = {
+ val t = relDataType match {
+ case composite: CompositeRelDataType =>
+ // at the moment we do not care about nullability
+ composite
+ case array: ArrayRelDataType =>
+ val elementType =
canonize(createTypeWithNullability(array.getComponentType, nullable))
+ new ArrayRelDataType(array.typeInfo, elementType, nullable)
+ case _ =>
+ super.createTypeWithNullability(relDataType, nullable)
+ }
+ canonize(t)
}
}
```
GroupWindowTest is still failing as it misses an identity projection. I'm
wondering why `ProjectRemoveRule.INSTANCE` did not kick in...
> Bump up Calcite version to 1.11
> -------------------------------
>
> Key: FLINK-5414
> URL: https://issues.apache.org/jira/browse/FLINK-5414
> Project: Flink
> Issue Type: Improvement
> Components: Table API & SQL
> Reporter: Timo Walther
> Assignee: Jark Wu
>
> The upcoming Calcite release 1.11 has a lot of stability fixes and new
> features. We should update it for the Table API.
> E.g. we can hopefully merge FLINK-4864
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)