Yanquan Lv created FLINK-38247:
----------------------------------
Summary: MySqlChunkSplitter may continuously generate splits when
using BIGINT UNSIGNED as primary key
Key: FLINK-38247
URL: https://issues.apache.org/jira/browse/FLINK-38247
Project: Flink
Issue Type: Bug
Components: Flink CDC
Affects Versions: cdc-3.4.0, cdc-3.2.1, cdc-3.3.0, cdc-3.1.1, cdc-3.2.0,
cdc-3.1.0
Reporter: Yanquan Lv
MySqlChunkSplitter may continuously generate splits when using BIGINT UNSIGNED
as primary key, The following log illustrates this point:
{code:java}
2025-08-12 18:10:37,885 INFO
org.apache.flink.cdc.connectors.mysql.source.assigners.MySqlChunkSplitter [] -
Use unevenly-sized chunks for table
lms_orderservice_0.order_attach_volume_charge_0, the chunk size is 8096 from
9159518964553691904
2025-08-12 18:10:37,892 INFO
org.apache.flink.cdc.connectors.mysql.source.assigners.MySqlChunkSplitter [] -
Use unevenly-sized chunks for table
lms_orderservice_0.order_attach_volume_charge_0, the chunk size is 8096 from
9228590553717701376
2025-08-12 18:10:37,899 INFO
org.apache.flink.cdc.connectors.mysql.source.assigners.MySqlChunkSplitter [] -
Use unevenly-sized chunks for table
lms_orderservice_0.order_attach_volume_charge_0, the chunk size is 8096 from
68365677240266752
2025-08-12 18:10:37,907 INFO
org.apache.flink.cdc.connectors.mysql.source.assigners.MySqlChunkSplitter [] -
Use unevenly-sized chunks for table
lms_orderservice_0.order_attach_volume_charge_0, the chunk size is 8096 from
136590545025291264
2025-08-12 18:10:38,015 INFO
org.apache.flink.cdc.connectors.mysql.source.assigners.MySqlChunkSplitter [] -
ChunkSplitter has split 39800 chunks for table
lms_orderservice_0.order_attach_volume_charge_0
{code}
Refer to
https://github.com/mysql/mysql-connector-j/blob/8.0.28/src/main/core-impl/java/com/mysql/cj/AbstractQueryBindings.java#L920,
PreparedStatement#setObject method will be converted to long type when
handling bigint unsigned, which poses a data overflow issue.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)