【 TiDB 使用环境】生产环境
【 TiDB 版本】 6.3.0
【复现路径】 从主库dumpling的方式导出备份,使用tidb-lightning 导入备份到从库。配置使用ticdc同步
【遇到的问题:问题现象及影响】 延迟越来越大,在配置同步时,指定tso,备份的tso与最新的tso有近8个小时的差距。如果不指定tso,查看changefees tso的差距也会越差越多
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】
因为导入时,数据量在170G左右,从主库导出再导入到新的从库中,肯定会有tso的差距。我新作的测试,不管那tso的差距,直接用默认tso 创建任务,现象依旧,如下图,第二个任务时正常的。第一个则是有问题的任务
默认tso不是从当前时间开始同步吗?
是的,因为从主库导出数据,再导入到从库中,耗时三个小时(使用tidb-lightning)。 然后我手动指定tso(导出的那个tso)启动cdc任务发现同步的延迟也会变大。 所以做了个不指定tso的测试,本想着差点数据就先差点数据,能实时的跟进tso同步就好,但是结果并非所想,延迟同样也是越来越大。
延迟同样也是越来越大和你数据怎么导出无关吧
我想表达的意思是,是不是因为导出和导入这段时间的时间差导致的cdc延迟增大。但是我经过测试发现应该不是此问题。而现在不确定是因为什么情况导致延迟大了,并且延迟还是越来越大。
你这个状态是normal的,根据你的描述指定tso start任务后差距越来越多是不是可以理解为tso推进的比较慢,还是说是一直停止不动的?
需要看一下grafana changefeed的监控、tikv log 和cdc log 有没有相关记录,来分析具体原因。
状态都是normal,tso推进的特别慢,,如下图是使用默认tso创建任务后的changefeed监控截图,显示延迟时间是刚创建完任务不久,后边红框是最新的延迟已经14个小时了,从10月10号创建的任务,然后延迟就一直增长
我查询了下,tikv服务(是需要从集群的kv日志吧?这个是从集群的)在使用默认的tso创建任务后个是创建任务后的唯一一个error日志输出
cdc服务(主集群)的日志在使用默认tso创建任务后没有error的日志输出
tikv 的 log看主集群的 顺便看下Sink write duration这个监控
你从库的性能怎么样
从库配置是主库配置的一半,主库kv节点和db节点都是16c32g 从库用的8c16g。跟配置关系大么?我看从集群的监控,cpu和内存的使用率都不是很高
show processlist
你看看,从库有没有执行主库的操作
日志有没有什么异常报错
从库的确是执行了一些操作,但是不是全部,就很奇怪。日志中还没报错
cdc 任务日志都正常的?
确认10号启动的任务,到查看时都是正常的。昨天任务延迟超过24小时cdc任务已经报错了,我手动删除了
有碰到类似问题, 同网段tidb 通过cdc同步库表,会出现延迟越来愈高得情况
临时找了个方法处理,
延迟超过30分钟得任务, pause 一下 然后再resume
看看对你好使不。
那后续是一直这样操作的嘛?每次超过30分钟都pause然后在resume? 这个同步可是长期的事,每次操作这个也挺头疼的