单节点OB随着运行时间变长,内存占用会越来越多

【 使用环境 】生产环境
【 OB or 其他组件 】OB
【 使用版本 】4.2.5.7
【问题描述】清晰明确描述问题
【复现路径
【附件及日志】

【备注】

7 个赞

5 个赞

OceanBase 社区已接收您的帖子,正在跟进中。

3 个赞

单节点 OceanBase(OB)随运行时间变长内存占用持续增加,通常‌不是正常的内存增长趋势,而是由‌MemStore未及时转储、‌特定模块内存泄漏或‌长事务/慢查询堆积导致。正常LSM-Tree架构下,内存应通过Minor Freeze和Major Freeze周期性释放。‌‌

5 个赞

加油。!!!

1 个赞

超过 memory_limit没

1 个赞

你是代理高还是单纯的数据库高还是都高?

能重启就重启下

学到了

为啥呢,是不是有什么资源不释放呀

看下集群memstore内存占比、转储阈值等参数设置的多少,平台监控观察有无批量任务和慢查询呢



当前节点约 19.4 GiB 内存中,~12 GiB 是 KV Cache,MemStore 和 Plan Cache 占比很小。这符合单节点 OB 长期运行后内存停在高位的典型模式

1 个赞

作者的视角很独特,提供了一个新思路。

加油

数据库的设计本身就是要在设置的阈值内最大化利用内存,所以越用内存占用越大,要看有没有超过阈值,如果没超过,且到达阈值后不再继续增长,那就是正常的,如果超过阈值且会用到100%,那就不正常了。