TiDB 内存释放问题(二)

我排查过 goroutine 的情况了,应该不是 goroutine 的泄漏。

目前我们有初步怀疑的代码泄漏位置,大概率是在 statistics 里面。

统计信息可能有对象引用了 Chunk 的内存,而 Chunk 是从 grpc 读上来的大块连续内存,小对象引用导致大块内存无法释放。

现在内存释放了么?

可以再抓一次内存的 profile 么? 昨天的 heap profile 我不知道为什么查不到行号。 你可以这样子弄么:

go tool pprof http://127.0.0.1:10080/debug/pprof/heap

然后会在 $HOME/pprof/ 目录下面生成 pprof.tidb-server.alloc_objects.alloc_space.inuse_objects.inuse_space.005.pb.gz 类似这种东西

然后把最近的那个传上来,我们研究一下行号了确认位置是真的在 statistics ?