You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "Jark Wu (Jira)" <ji...@apache.org> on 2021/09/08 04:36:00 UTC
[jira] [Created] (FLINK-24204) Failed to insert nested types using
value constructed functions
Jark Wu created FLINK-24204:
-------------------------------
Summary: Failed to insert nested types using value constructed functions
Key: FLINK-24204
URL: https://issues.apache.org/jira/browse/FLINK-24204
Project: Flink
Issue Type: Bug
Components: Table SQL / API
Affects Versions: 1.13.2
Reporter: Jark Wu
{code}
Flink SQL> CREATE TABLE nested_type (
> row_type ROW<id BIGINT, data STRING>,
> map_type MAP<STRING, BIGINT>,
> array_type ARRAY<BIGINT>
> ) WITH ('connector'='print');
[INFO] Execute statement succeed.
Flink SQL> INSERT INTO nested_type VALUES ((1, 'data'), MAP['key', 1], ARRAY[1,2,3])
> ;
[INFO] Submitting SQL update statement to the cluster...
[ERROR] Could not execute SQL statement. Reason:
org.apache.flink.table.planner.codegen.CodeGenException: Unsupported cast from 'MAP<CHAR(3) NOT NULL, INT NOT NULL> NOT NULL' to 'MAP<STRING, BIGINT>'.
{code}
The query works if we change the sink table definition to :
{code}
CREATE TABLE nested_type (
row_type ROW<id BIGINT, data STRING>,
map_type MAP<STRING, INT>,
array_type ARRAY<INT>
) WITH (
'connector'='print'
);
{code}
Therefore, I think the root cause of this problem is Flink SQL doesn't support cast for nested types when code generation.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)