You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Till Rohrmann (Jira)" <ji...@apache.org> on 2020/12/30 09:45:00 UTC

[jira] [Commented] (FLINK-16998) Add a changeflag to Row type

    [ https://issues.apache.org/jira/browse/FLINK-16998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17256401#comment-17256401 ] 

Till Rohrmann commented on FLINK-16998:
---------------------------------------

Quick question [~twalthr]: Did this change break compatibility? A user reported a problem with a query where RowData is used as a key (group by which seems to use {{MiniBatchIncrementalGroupAggFunction}}). Since this issue changed the format of {{RowData}} which is used as a key and Flink does not support migrating keys, this change seems to break backwards compatibility.

> Add a changeflag to Row type
> ----------------------------
>
>                 Key: FLINK-16998
>                 URL: https://issues.apache.org/jira/browse/FLINK-16998
>             Project: Flink
>          Issue Type: Sub-task
>          Components: API / Core
>            Reporter: Timo Walther
>            Assignee: Timo Walther
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.11.0
>
>
> In Blink planner, the change flag of records travelling through the pipeline are part of the record itself but not part of the logical schema. This simplifies the architecture and API in many cases.
> Which is why we aim adopt the same mechanism for {{org.apache.flink.types.Row}}.
> Take {{tableEnv.toRetractStream()}} as an example that returns either Scala or Java {{Tuple2<Boolean, Row>}}. For FLIP-95 we need to support more update kinds than just a binary boolean.
> This means:
> - Add a changeflag {{RowKind}} to to {{Row}}
> - Update the {{Row.toString()}} method
> - Update serializers in backwards compatible way



--
This message was sent by Atlassian Jira
(v8.3.4#803005)