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

yux updated FLINK-35256:
------------------------
    Description: 
Flink CDC 3.1.0 brought transform feature, allowing column type / value 
transformation prior to data routing process. However after the transformation, 
column type marked as `NOT NULL` lost their annotation, causing some downstream 
sinks to fail since they require primary key to be NOT NULL.

Here's the minimum reproducible example about this problem:

```yaml
source:
type: mysql
...

sink:
type: starrocks
name: StarRocks Sink
...

pipeline:
name: Sync MySQL Database to StarRocks
parallelism: 4

transform:
 - source-table: reicigo.\.*
projection: ID, UPPER(ID) AS UPID

```

In the MySQL source table, primary key column `ID` is marked as `NOT NULL`, but 
such information was lost at downstream, causing the following exception (see 
attachment).

  was:
Flink CDC 3.1.0 brought transform feature, allowing column type / value 
transformation prior to data routing process. However after the transformation, 
column type marked as `NOT NULL` lost their annotation, causing some downstream 
sinks to fail since they require primary key to be NOT NULL.

Here's the minimum reproducible example about this problem:

```yaml
source:
  type: mysql
  ...

sink:
  type: starrocks
  name: StarRocks Sink
  ...

pipeline:
  name: Sync MySQL Database to StarRocks
  parallelism: 4

transform:
  - source-table: reicigo.\.*
    projection: ID, UPPER(ID) AS UPID
```

In the MySQL source table, primary key column `ID` is marked as `NOT NULL`, but 
such information was lost at downstream, causing the following exception (see 
attachment).


> Pipeline transform ignores column type nullability
> --------------------------------------------------
>
>                 Key: FLINK-35256
>                 URL: https://issues.apache.org/jira/browse/FLINK-35256
>             Project: Flink
>          Issue Type: Improvement
>          Components: Flink CDC
>            Reporter: yux
>            Priority: Major
>         Attachments: log.txt
>
>
> Flink CDC 3.1.0 brought transform feature, allowing column type / value 
> transformation prior to data routing process. However after the 
> transformation, column type marked as `NOT NULL` lost their annotation, 
> causing some downstream sinks to fail since they require primary key to be 
> NOT NULL.
> Here's the minimum reproducible example about this problem:
> ```yaml
> source:
> type: mysql
> ...
> sink:
> type: starrocks
> name: StarRocks Sink
> ...
> pipeline:
> name: Sync MySQL Database to StarRocks
> parallelism: 4
> transform:
>  - source-table: reicigo.\.*
> projection: ID, UPPER(ID) AS UPID
> ```
> In the MySQL source table, primary key column `ID` is marked as `NOT NULL`, 
> but such information was lost at downstream, causing the following exception 
> (see attachment).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to