利用drainer从tidb3.0.0版本同步数据至5.2.1报binlog's commit ts less than the last ts错误

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】
原始版本v3.0.0
迁移版本v5.2.1

【概述】 场景 + 问题概述
升级线上版本,并没有直接在原环境升级,而是利用备份加数据同步工具方式进行升级

【备份和数据迁移策略逻辑】
备份工具:mydumper工具(tidb官方提供的版本)
导入工具:tidb-lightning

【背景】 做过哪些操作
1、创建新的v5.2.1版本的环境
2、利用mydumper工具备份v3.0.0版本的数据
3、利用tidb-lightning工具将备份导入至v5.2.1版本中
4、部署drainer工具从mydumper工具写入metadata中pos点开始同步

【问题】 当前遇到的问题
drainer日志中持续不断的报binlog’s commit ts less than the last ts错误

【业务影响】
不知同步是否正常

【TiDB 版本】
原始版本:v3.0.0
迁移版本:v5.2.1

【附件】

你启动 drinaer 设置的 startts 大于了目前 binlog 输出 commit ts 。请根据操作文档确定好相关 TS

我设置的ts是根据mydumper备份生成的文件中的metadata中记录的Pos


看日志的报错,好像还在向前推进? 能否麻烦帮忙确认下,是否还有报错,位点是否在推进呢?多谢。

show pump status;
show drainer status;

看状态是正常的(drainer当前只使用10.11.164.105:8249,其他都正常下线了)

之前看drainer日志虽然一直有上面的错误,但是人工实验看同步还是在正常往前推,但是现在突然有停了,也没有任何其他报错信息

另外一个就是一旦有错误,drainer日志就开启疯狂模式,短时间持续写入巨量的相同的错误信息
image

请问您的 pump 和 drainer 版本是什么?
在 4.0 版本,如果 commit ts 和 last ts 一样,只会报 warning https://github.com/pingcap/tidb-binlog/blob/v4.0.0/drainer/merge.go#L325

都是3.0.0版本

那这个报错感觉可以忽略,并且看 show status 也都是正常的。

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