轻松的鱼
(轻松的鱼)
1
为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】
测试环境,TiDB5.1
4C 32G内存
【概述】 场景 + 问题概述
手工安装 drainer 消费 pump binlog,启动过程持续20分钟,最后日志报错“GC life time is shorter than transaction duratio”。请问应该从哪里分析 drainer 要启动这么久时间?
-
配置文件:
-
启动:
nohup ./drainer -config ./drainer.toml > log/drainer_stderr.log 2>&1 &
-
日志
1 个赞
spc_monkey
(carry@pingcap.com)
2
这个说明 你 启动时间,已经超过了 gc 的时间,建议参考其他帖子或官网直接走报错信息
轻松的鱼
(轻松的鱼)
3
我也知道是超过了gc时间,但是为什么启动drainer 会这么慢呢?有没有排查手段?
轻松的鱼
(轻松的鱼)
4
pump 和另外2个 drainer 都正常:
开了debug 日志,drainer.log 一直输出:
并且看了 TiDB 中也没有在做什么慢查询和DDL:
轻松的鱼
(轻松的鱼)
5
调大了 gc life time,花了40分钟终于启动了。debug 日志全是历史 DDL 的信息:
然后看了下 DDL 历史记录,只能用海量来形容:
为什么 drainer 启动时需要获取所有 DDL 记录记录?这篇文章有解释:
所以这个问题无解???
system
(system)
关闭
7
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。