- 【TiDB 版本】:v4.0.6
- 【TiCDC 版本】:v4.0.8
每个同步任务同步一张表,共计50+同步任务,都是往RDS上同步数据。
其中一个任务开了16个并发,并且执行了DDL语句(此表比较大,在RDS上执行较慢),导致所有同步任务都阻塞,延迟了。
删除这个同步任务后,延迟就逐步恢复了。
cdc日志:scdc.log.gz (556.5 KB)
这个是正常的吗?
每个同步任务同步一张表,共计50+同步任务,都是往RDS上同步数据。
其中一个任务开了16个并发,并且执行了DDL语句(此表比较大,在RDS上执行较慢),导致所有同步任务都阻塞,延迟了。
删除这个同步任务后,延迟就逐步恢复了。
cdc日志:scdc.log.gz (556.5 KB)
这个是正常的吗?
1、这个阻塞在当前的实现中是存在的
2、负载均衡的粒度是表,确实存在表热点的问题
1.可以停下在执行耗时较长 ddl 的 changefeed,手动执行ddl后,通过changefeed 配置跳过这个 ddl,然后继续同步。
在这个实践中,有两点需要注意:a、tikv GC,如果直接删除 changefeed,那么可能导致 tikv gc 掉后续重建 changefeed 所需要的数据;b、目前的实现中,可以通过搜寻 apply job 字样的 log,来确认 ddl job 的 startts。
后续版本会优化这个问题吗?目前已经升级到v4.0.9了。
issues 已经提交,可以到 pingcap/ticdc issues 下查看
可以,666
赞~·
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。