[
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)