Benoît Paris created FLINK-16277: ------------------------------------ Summary: StreamTableEnvironment.toAppendStream fails with Decimal types Key: FLINK-16277 URL: https://issues.apache.org/jira/browse/FLINK-16277 Project: Flink Issue Type: Bug Components: Table SQL / Legacy Planner, Table SQL / Planner Affects Versions: 1.10.0 Reporter: Benoît Paris Attachments: flink-test-schema-update.zip
The following fails when there is a Decimal type in the underlying TableSource: {code:java} DataStream<Row> appendStream = tEnv.toAppendStream( asTable, asTable.getSchema().toRowType() );{code} Yielding the following error: ValidationException: Type ROW<`y` DECIMAL(38, 18)> of table field 'payload' does not match with the physical type ROW<`y` LEGACY('DECIMAL', 'DECIMAL')> of the 'payload' field of the TableSource return type ---- Remarks: * toAppendStream is not ready for the new type system, does not accept the new DataTypes * The LegacyTypeInformationType transition type hinders things. Replacing it with the new DataTypes.DECIMAL type makes things work. Workaround: reprocess TypeConversions.fromLegacyInfoToDataType's output to replace LegacyTypeInformationType types when they are of DECIMAL typeroot with the new types. Included is reproduction and workaround (activated by line 127) code, with java + pom + stacktrace files. -- This message was sent by Atlassian Jira (v8.3.4#803005)