加载统计信息内存OOM如何处理

【 TiDB 使用环境】生产环境 or 测试环境 or POC
生产
【 TiDB 版本】
5.0.2
【遇到的问题】
突然TiDB内存增大,达到整机的80以上(物理机为128G)
这个是对应的内存图, 想问一下这个情况如何处理?


【复现路径】做过哪些操作出现的问题
【问题现象及影响】

【附件】

请提供各个组件的 version 信息,如 cdc/tikv,可通过执行 cdc version/tikv-server --version 获取。

这种情况需要先检查一下analyze version是多少。analyze version是2的话,会出现这种OOM的情况,所以需要把analyze version设置成1

5.0.2这个版本有tidb_analyze_version这个系统变量吗?有的话改成1试试,v2版本的统计信息好像在TiDB v5早期版本中有OOM bug

这个不是在analyze table 期间才会出现的吗?我看这个时间点已经没有auto analyze table 在运行,这个是自动load 统计信息,这个也会OOM 吗?

x@x((none)) > select @@tidb_analyze_version;
±-----------------------+
| @@tidb_analyze_version |
±-----------------------+
| 1 |
±-----------------------+
1 row in set (0.00 sec)
之前应该早就设置成1了

  1. 从 profile 看,也只有 3 个 G 的内存消耗,物理机内存 128 G,对应不上。
  2. 物理机上只部署了一个 tidb-server 吗? 从哪里看到的 tidb-server 内存增大?
  3. 如果是,反馈下这台tidb-server的 grafana 的 runtime 监控
  1. 物理机上只部署了一个 tidb-server 吗? 从哪里看到的 tidb-server 内存增大?
    这个是我通过 ps 进程看到的, 然后打了一个内存堆栈, 就是上面的那一台

  2. 这个监控我找找, 多谢哈 :+1: