You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Xin Gong (Jira)" <ji...@apache.org> on 2024/04/18 04:36:00 UTC
[jira] [Created] (FLINK-35151) Flink mysql cdc will stuck when suspend binlog split and ChangeEventQueue is full
Xin Gong created FLINK-35151:
--------------------------------
Summary: Flink mysql cdc will stuck when suspend binlog split and ChangeEventQueue is full
Key: FLINK-35151
URL: https://issues.apache.org/jira/browse/FLINK-35151
Project: Flink
Issue Type: Bug
Components: Flink CDC
Environment: I use master branch reproduce it.
Reason is that producing binlog is too fast. MySqlSplitReader#suspendBinlogReaderIfNeed will execute BinlogSplitReader#stopBinlogReadTask to set
currentTaskRunning to be false after MysqSourceReader receives binlog split update event.
MySqlSplitReader#pollSplitRecords is executed and
dataIt is null to execute closeBinlogReader when currentReader is BinlogSplitReader. closeBinlogReader will execute statefulTaskContext.getBinaryLogClient().disconnect(), it could dead lock. Because BinaryLogClient#connectLock is not release when MySqlStreamingChangeEventSource add element to full queue.
Reporter: Xin Gong
Attachments: dumpstack.txt
Flink mysql cdc will stuck when suspend binlog split and ChangeEventQueue is full.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)