drainer启动20分钟超时报错

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】
测试环境,TiDB5.1
4C 32G内存

【概述】 场景 + 问题概述
手工安装 drainer 消费 pump binlog,启动过程持续20分钟,最后日志报错“GC life time is shorter than transaction duratio”。请问应该从哪里分析 drainer 要启动这么久时间?

  1. 配置文件:

  2. 启动:
    nohup ./drainer -config ./drainer.toml > log/drainer_stderr.log 2>&1 &

  3. 日志


1 个赞

这个说明 你 启动时间,已经超过了 gc 的时间,建议参考其他帖子或官网直接走报错信息

我也知道是超过了gc时间,但是为什么启动drainer 会这么慢呢?有没有排查手段?

pump 和另外2个 drainer 都正常:

开了debug 日志,drainer.log 一直输出:

并且看了 TiDB 中也没有在做什么慢查询和DDL:

调大了 gc life time,花了40分钟终于启动了。debug 日志全是历史 DDL 的信息:


然后看了下 DDL 历史记录,只能用海量来形容:

为什么 drainer 启动时需要获取所有 DDL 记录记录?这篇文章有解释:

所以这个问题无解???

可以考虑 cdc ,或者在需求模块,提个需求

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。