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)