[
https://issues.apache.org/jira/browse/FLINK-32001?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17719601#comment-17719601
]
Jingsong Lee commented on FLINK-32001:
--------------------------------------
CC [~yuxia]
> SupportsRowLevelUpdate does not support returning only a part of the columns.
> -----------------------------------------------------------------------------
>
> Key: FLINK-32001
> URL: https://issues.apache.org/jira/browse/FLINK-32001
> Project: Flink
> Issue Type: Improvement
> Components: Table SQL / Runtime
> Affects Versions: 1.17.0
> Reporter: Ming Li
> Priority: Major
>
> [FLIP-282|https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=235838061]
> introduces the new Delete and Update API in Flink SQL. Although it is
> described in the documentation that in case of {{partial-update}} we only
> need to return the primary key columns and the updated columns.
> But in fact, the topology of the job is {{{}source -> cal ->
> constraintEnforcer -> sink{}}}, and the constraint check will be performed in
> the operator of {{{}constraintEnforcer{}}}, which is done according to index,
> not according to column. If only some columns are returned, the constraint
> check is wrong, and it is easy to generate
> {{{}ArrayIndexOutOfBoundsException{}}}.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)