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

supreetha commented on FLINK-38788:
-----------------------------------

I would like to submit a fix for this.

> flink-connector-mysql-cdc silently fails when unable to reconnect due to 
> credentials rotation
> ---------------------------------------------------------------------------------------------
>
>                 Key: FLINK-38788
>                 URL: https://issues.apache.org/jira/browse/FLINK-38788
>             Project: Flink
>          Issue Type: Bug
>          Components: Flink CDC
>    Affects Versions: cdc-3.4.0, cdc-3.5.0
>            Reporter: supreetha
>            Priority: Major
>
> When MySQL credentials are rotated, the {{debezium-mysql}} source connector (
> flink-connector-mysql-cdc) fails to reconnect. It also does not throw any 
> errors. Instead, it appears to enter an infinite retry loop, creating a new 
> thread on each retry attempt. 
> The connector ignores the configured connect.timeout and connect.max-retries
>  parameters, resulting in a silent failure where the job stops consuming data 
> but never restarts or fails.
> Steps to reproduce:
>  # Create a MySQL CDC source using the Debezium MySQL connector by setting 
> the below config:
> {{a. connect.timeout}}
> b. connect.max-retries
> c. Use a non-root MySQL user.
>  # Start a Flink job.
>  # Confirm that the job connects successfully and begins reading MySQL binlog 
> events.
>  # Rotate the MySQL user's password.
>  # Run {{KILL CONNECTION <connection_id>}} on the MySQL server to force a 
> reconnect.
>  # Generate new data in MySQL using the updated credentials to confim the new 
> credentials are working.
>  # Observe that the Flink job stops consuming data from MySQL but does *not* 
> throw an error.
>  # Notice that the MySqlStreamingChangeEventSource tries to create a new 
> thread infinitely.
> Stack trace:
>  
> {code:java}
> 2025-12-05 17:05:57,113 INFO 
> org.apache.flink.cdc.connectors.mysql.source.reader.MySqlSourceReader [] - 
> Binlog offset for tables [local_agr.application_setting, local_agr.asset, 
> local_agr.asset_attribute] on checkpoint 8: {transaction_id=null, 
> ts_sec=1764954296, file=mysql-bin.000003, pos=138589, kind=SPECIFIC, 
> gtids=6d2eb014-d1fb-11f0-9e96-0242ac130006:1-16,af6ffbc8-7459-11f0-bd64-0242ac130005:1-729,
>  row=0, event=0, server_id=1} 2025-12-05 17:06:56,069 INFO 
> io.debezium.connector.mysql.MySqlStreamingChangeEventSource [] - Stopped 
> reading binlog after 0 events, last recorded offset: {transaction_id=null, 
> ts_sec=1764954381, file=mysql-bin.000003, pos=139087, 
> gtids=6d2eb014-d1fb-11f0-9e96-0242ac130006:1-17,af6ffbc8-7459-11f0-bd64-0242ac130005:1-729,
>  server_id=1, event=1} 2025-12-05 17:06:57,109 INFO 
> org.apache.flink.cdc.connectors.mysql.source.reader.MySqlSourceReader [] - 
> Binlog offset for tables [local_agr.application_setting, local_agr.asset, 
> local_agr.asset_attribute] on checkpoint 9: {transaction_id=null, 
> ts_sec=1764954296, file=mysql-bin.000003, pos=138668, kind=SPECIFIC, 
> gtids=6d2eb014-d1fb-11f0-9e96-0242ac130006:1-16,af6ffbc8-7459-11f0-bd64-0242ac130005:1-729,
>  row=0, event=0, server_id=1} 2025-12-05 17:07:27,733 INFO 
> io.debezium.util.Threads [] - Creating thread 
> debezium-mysqlconnector-mysql_binlog_source-binlog-client 2025-12-05 
> 17:07:57,113 INFO 
> org.apache.flink.cdc.connectors.mysql.source.reader.MySqlSourceReader [] - 
> Binlog offset for tables [local_agr.application_setting, local_agr.asset, 
> local_agr.asset_attribute] on checkpoint 10: {transaction_id=null, 
> ts_sec=1764954296, file=mysql-bin.000003, pos=138668, kind=SPECIFIC, 
> gtids=6d2eb014-d1fb-11f0-9e96-0242ac130006:1-16,af6ffbc8-7459-11f0-bd64-0242ac130005:1-729,
>  row=0, event=0, server_id=1} 2025-12-05 17:08:27,791 INFO 
> io.debezium.util.Threads [] - Creating thread 
> debezium-mysqlconnector-mysql_binlog_source-binlog-client 2025-12-05 
> 17:08:57,112 INFO 
> org.apache.flink.cdc.connectors.mysql.source.reader.MySqlSourceReader [] - 
> Binlog offset for tables [local_agr.application_setting, local_agr.asset, 
> local_agr.asset_attribute] on checkpoint 11: {transaction_id=null, 
> ts_sec=1764954296, file=mysql-bin.000003, pos=138668, kind=SPECIFIC, 
> gtids=6d2eb014-d1fb-11f0-9e96-0242ac130006:1-16,af6ffbc8-7459-11f0-bd64-0242ac130005:1-729,
>  row=0, event=0, server_id=1} 2025-12-05 17:09:27,845 INFO 
> io.debezium.util.Threads [] - Creating thread 
> debezium-mysqlconnector-mysql_binlog_source-binlog-client 2025-12-05 
> 17:09:57,112 INFO 
> org.apache.flink.cdc.connectors.mysql.source.reader.MySqlSourceReader [] - 
> Binlog offset for tables [local_agr.application_setting, local_agr.asset, 
> local_agr.asset_attribute] on checkpoint 12: {transaction_id=null, 
> ts_sec=1764954296, file=mysql-bin.000003, pos=138668, kind=SPECIFIC, 
> gtids=6d2eb014-d1fb-11f0-9e96-0242ac130006:1-16,af6ffbc8-7459-11f0-bd64-0242ac130005:1-729,
>  row=0, event=0, server_id=1} 2025-12-05 17:10:27,901 INFO 
> io.debezium.util.Threads [] - Creating thread 
> debezium-mysqlconnector-mysql_binlog_source-binlog-client 2025-12-05 
> 17:10:57,114 INFO 
> org.apache.flink.cdc.connectors.mysql.source.reader.MySqlSourceReader [] - 
> Binlog offset for tables [local_agr.application_setting, local_agr.asset, 
> local_agr.asset_attribute] on checkpoint 13: {transaction_id=null, 
> ts_sec=1764954296, file=mysql-bin.000003, pos=138668, kind=SPECIFIC, 
> gtids=6d2eb014-d1fb-11f0-9e96-0242ac130006:1-16,af6ffbc8-7459-11f0-bd64-0242ac130005:1-729,
>  row=0, event=0, server_id=1} 2025-12-05 17:11:27,957 INFO 
> io.debezium.util.Threads [] - Creating thread 
> debezium-mysqlconnector-mysql_binlog_source-binlog-client 2025-12-05 
> 17:11:57,114 INFO 
> org.apache.flink.cdc.connectors.mysql.source.reader.MySqlSourceReader [] - 
> Binlog offset for tables [local_agr.application_setting, local_agr.asset, 
> local_agr.asset_attribute] on checkpoint 14: {transaction_id=null, 
> ts_sec=1764954296, file=mysql-bin.000003, pos=138668, kind=SPECIFIC, 
> gtids=6d2eb014-d1fb-11f0-9e96-0242ac130006:1-16,af6ffbc8-7459-11f0-bd64-0242ac130005:1-729,
>  row=0, event=0, server_id=1}{code}



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

Reply via email to