[
https://issues.apache.org/jira/browse/FLINK-20535?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jark Wu closed FLINK-20535.
---------------------------
Resolution: Not A Problem
The legacy sink (by using 'connector.type' = 'xxx') infers primary key from
query, however, primary key can't be inferred in many cases.
This problem has been fixed in 1.11 by introducing the new sink (by using
'connector' = 'xxx'), it will always use the primary key defined on the DDL.
You can have a look at the docs:
https://ci.apache.org/projects/flink/flink-docs-release-1.12/dev/table/connectors/jdbc.html
> "GROUPING SETS" query result cannot upsert to table
> ----------------------------------------------------
>
> Key: FLINK-20535
> URL: https://issues.apache.org/jira/browse/FLINK-20535
> Project: Flink
> Issue Type: Bug
> Components: Table SQL / API
> Affects Versions: 1.11.2
> Reporter: richt richt
> Priority: Major
>
>
> {code:java}
> //代码占位符
> insert into table_sink
> city , case when dt is null then 'ALL' else dt end,
> count(*) from table_source
> group by GROUPING SETS ((city, dt), dt)
> {code}
> even i spicify the primary key in the table_sink , but it still throw
> exeception
> "UpsertStreamTableSink requires that Table has a full primary keys if it is
> updated."
> at
> org.apache.flink.table.planner.plan.nodes.physical.stream.StreamExecLegacySink.translateToPlanInternal(StreamExecLegacySink.scala:93)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)