You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Weijie Guo (Jira)" <ji...@apache.org> on 2023/05/19 08:10:00 UTC

[jira] [Resolved] (FLINK-32001) SupportsRowLevelUpdate does not support returning only a part of the columns.

     [ https://issues.apache.org/jira/browse/FLINK-32001?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Weijie Guo resolved FLINK-32001.
--------------------------------
    Resolution: Fixed

master(1.18) via 6695d84dbb705640eb3b86b1ba50c4b09d4d3156.
release-1.17 via 0a04422f2838a000f36c80b940d9a04c35b46948.

> 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
>            Assignee: luoyuxia
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.18.0, 1.17.1
>
>
> [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)