ticdc 同步卡住,提示 flushLog blocking too long, the redo manager may be stuck

【TiDB 使用环境】生产环境 /测试/ Poc
【TiDB 版本】
【操作系统】
【部署方式】云上部署(什么云)/机器部署(什么机器配置、什么硬盘)
【集群数据量】
【集群节点数】
【问题复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【复制黏贴 ERROR 报错的日志】
【其他附件:截图/日志/监控】

ticdc 在做主从集群同步时,延迟一直增加,看日志一直在报 flushLog blocking too long, the redo manager may be stuck ,有什么排查思路吗

开了 redo log ?试试关闭看看有没有效果。

看这个日志的意思是刷日志 block 了。

在做主从集群同步,这个不能关吧。不然数据不一致了

这个可以关,tidb ticdc 的同步 redo 是做灾难一致性恢复用的。不开这个问题也不大。
https://docs.pingcap.com/zh/tidb/stable/ticdc-overview/#最佳实践

调大 memory-quota 参数 和 调大 sink-uri 中的 worker-count 参数
写 redo log 慢的话可以调整这里的参数试下。https://docs.pingcap.com/zh/tidb/stable/ticdc-changefeed-config/#consistent

暂停任务后,发现 changfeed 任务的 ownership 全部为 Processor ,没有 owner ,同步任务停不掉,这样应该如何处理

过一段时间之后也没有选举出 owner 吗?看一下日志有没有报什么错,cdc 是通过 pd 的 etcd 来选举 owner,如果没有 owner 应该有相关日志

过了20分钟,也没有选举出 owner 。日志搜素什么关键字

我把 ticdc 组件全部重启了 现在有owener 节点信息了

归档.zip (6.6 MB)
这是3节点的 cdc 日志信息

有 owner 了我理解你就能创建任务了。

还有,你存 redo log 的盘是什么盘?ssd 么。

nfs 存储

需要把之前同步至下游的的 changefeed 删除才能重建吧, 不然不是2次写入吗

那是的,那你吧 changefeed 删了再试试。

删changefeed的时候 3个节点就全部变为 processor ,没有 owner 节点了


看你之前卡,应该是刷 redo log 超过 31m 了,感觉你刷 redo 的目标盘很烂。如果没有好的硬件不行 redo 就别开了。

后面看日志有 [2025/07/21 20:12:52.314 +08:00] [INFO] [helper.go:83] [“got signal, prepare to shutdown”] [signal=terminated]

看起来是主动关掉的 cdc 节点,当时应该有 owner 的,看是 222 这个节点 cdc 就是,应该是关闭之后 owner 没选出来?

你要不现在试试删 changefeed 吧。

下游写的 kafka 么?

https://docs.pingcap.com/zh/tidb/stable/release-7.1.6/


你不行试试升级一个小版本看看。