ticdc大事务同步消耗大量内存

【 TiDB 使用环境】生产\测试环境\ POC
生产环境
【 TiDB 版本】
6.1
【遇到的问题】
ticdc同步大事务时,需要耗费大量内存,如果预先分配内存不够,就会oom一直重启,导致同步无法进行
如下图的事务,最大内存需要91G,如果预留内存不够的情况下,就会一直oom,导致同步失败



麻烦看下,是否可以优化资源使用

ticdc 已经描述了不支持大事务 … 建议将业务逻辑和事务进行合理的拆分


https://docs.pingcap.com/zh/tidb/stable/ticdc-faq#ticdc-支持同步大事务吗有什么风险吗

cdc 近期优化了对大事务的支持,目前只在 v6.2 版本中可以解决 OOM 问题,如果是测试环境的话,建议更新成 v6.2 的 cdc 试一下,只需要在 sinkuri 中设置 transaction-atomicity=none 就可以。
另外,相关的优化也会在未来的 v6.1.1 中发布。

1 个赞

太好了,我们试试看

1 个赞

理论上大事务的问题数据库很难很好的解决,拆分大事务应该是不错的选择

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