Project

General

Profile

Bug #45090

Updated by Zheng Yan almost 4 years ago

<pre>
Thread 9 "ms_dispatch" hit Breakpoint 1, CInode::encode_inodestat (this=0x555558056b00, bl=..., session=0x555557136480, dir_realm=0x555557116a00, snapid=...,
max_bytes=523476, getattr_caps=0) at /home/zhyan/Ceph/ceph/src/mds/CInode.cc:3831
3831 if (pxattrs) {
(gdb) n
3832 for (const auto &p : *pxattrs)
(gdb) p
The history is empty.
(gdb) n
314 unsigned length() const { return _len; }
(gdb) p p
$1 = {first = "user.test", second = {_raw = 0x55555750fb60, _off = 369399, _len = 4}}
</pre>

The large memory is likely from buffer bufferlist of dirfrag omap fetch (omap fetch)



mds may trim some inodes, reload them later. In the worst case. each inode's xattr_map may reference different memory.

Back