tidb-server OOM 不停的重启

【 TiDB 使用环境】测试/
【 TiDB 版本】V7.1.1
【复现路径】
不确定能否复现
【遇到的问题:问题现象及影响】
11月14日晚上22点左右左右通过tidb-lightning 导入近30张表数据,总数据量不到一亿, 导入完成后,tidb-server开始OOM,不停的循环重启,日志中也看不出来什么错误。
流量热力图中能看到数据导入后对于stats_开头的系统表的数据读取量明显增加。
未发现有慢查询,当前集群还为正式开放,目前只有简单的增删改,查询很少。

【资源配置】
三台主机,64核,128G, 混合部署,每台机器一个pd,一个kv,一个server


我部署方式与你差不多,且虚拟机配置比你的差,导入几百张表,总数据量1T左右,最大表3亿以上,没出现你这个问题

1 个赞

你是运行什么sql语句吧,没运行sql语句,tidb server不可能oom

把架构贴出来

混合部署就是原因 tidb tikv在抢占内存不停oom

你分开部署吧 tidb默认是占用机器的全部内存 tikv也是 谁内存大oom谁

混合部署把内存上限配置好,再看看慢查询有什么特别吃内存的吗

试试升级到 7.1.2 试试。

如果还不行 就需要抓火焰图 反馈区找研发看看了。

SHOW variables like ‘%oom%’; 看看tidb_mem_oom_action这个参数是怎么设置的。
我们这以前设置的是log,TiDB Server频繁重启,设置成CANCEL后,就好了(SQL执行超过tidb_mem_quota_query就中断了)。
set global tidb_mem_oom_action=‘CANCEL’

tidb_mem_oom_action

tidb_mem_oom_action=false

还是看看慢查询吧

故障时段TiKV的内存使用有没有超过限制呢?
另外从TiDB Dashboard查看一下慢查询,使用内存使用降序查看故障时段的SQL内存使用情况。

我以前是慢SQL,占内存大,你看看占内存大的SQL频率高吗?另外可以试着优化一下

lightning导入完成,要对导入的表进行统计信息收集的,如果表比较大的话,确实有可能oom

1 个赞

已经尝试过收集,没有效果

在昨天导入新的32张表之前,集群已经有8T的数据,未发现有异常,问题是昨天新导入数据之后出现

翻看了监控,发现慢查询都是在查系统表,这个和上面的火焰图结果相符

已经尽量设置了server和kv的内存使用上限,没用

这个参数很久之前已设置为cancel