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

Mao Jiayi reopened FLINK-39758:
-------------------------------

> Fix error in canal json mysqlType when mysql type is varchar with no length
> ---------------------------------------------------------------------------
>
>                 Key: FLINK-39758
>                 URL: https://issues.apache.org/jira/browse/FLINK-39758
>             Project: Flink
>          Issue Type: Bug
>          Components: Flink CDC
>            Reporter: Mao Jiayi
>            Priority: Major
>              Labels: pull-request-available
>
> When using the Kafka pipeline connector with Canal JSON format and the 
> *InferSchemaStrategy.MYSQL_TYPE* schema inference strategy, the job may fail 
> when MySQL columns have missing or invalid length information.
> The failure happens in {*}MySqlTypeUtils{*}. The previous implementation does 
> not properly validate column length before type conversion. When the MySQL 
> binlog metadata contains columns with {*}length <= 0{*}, the code directly 
> passes these invalid values to Flink's *DataTypes* constructors. For 
> *VARCHAR* type, the code only checks {{== 0}} but not negative values. For 
> *DECIMAL* type, there is no validation for non-positive length. For 
> *VARBINARY* type, there is no length check at all.
> This issue occurs when parsing Canal JSON messages where certain MySQL column 
> schemas have undefined lengths, causing invalid data type creation or runtime 
> exceptions during schema inference.



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

Reply via email to