Re: Get memory contexts of an arbitrary backend process
torikoshia <torikoshia@oss.nttdata.com>
From: torikoshia <torikoshia@oss.nttdata.com>
To: masao.fujii@oss.nttdata.com, Kyotaro Horiguchi <horikyota.ntt@gmail.com>
Cc: pgsql-hackers@postgresql.org, tgl@sss.pgh.pa.us,
gkokolatos@protonmail.com, kasahara.tatsuhito@gmail.com,
craig@2ndquadrant.com
Date: 2021-03-29T02:59:13Z
Lists: pgsql-hackers
Attachments
- v5-0001-add-memorycontext-elog-print.patch (text/x-diff) patch v5-0001
On 2021-03-26 14:08, Kyotaro Horiguchi wrote: > At Fri, 26 Mar 2021 14:02:49 +0900, Fujii Masao > <masao.fujii@oss.nttdata.com> wrote in >> >> >> On 2021/03/26 13:28, Kyotaro Horiguchi wrote: >> >> "some contexts are omitted" >> >> "n child contexts: total_bytes = ..." >> > Sorry I missed that is already implemented. So my opnion is I agree >> > with limiting with a fixed-number, and preferablly sorted in >> > descending order of... totalspace/nblocks? >> >> This may be an improvement, but makes us modify >> MemoryContextStatsInternal() >> very much. I'm afraid that it's too late to do that at this stage... >> What about leaving the output order as it is at the first version? > > So I said "preferably":p (with a misspelling...) > I'm fine with that. > > regards. Thanks for the comments! Attached a new patch. It adds pg_log_backend_memory_contexts(pid) which logs memory contexts of the specified backend process. The number of child contexts to be logged per parent is limited to 100 as with MemoryContextStats(). As written in commit 7b5ef8f2d07, which limits the verbosity of memory context statistics dumps, it supposes that practical cases where the dump gets long will typically be huge numbers of siblings under the same parent context; while the additional debugging value from seeing details about individual siblings beyond 100 will not be large. Thoughts? Regards.
Commits
-
Add function to log the memory contexts of specified backend process.
- 43620e328617 14.0 landed
-
Add pg_backend_memory_contexts system view.
- 3e98c0bafb28 14.0 cited
-
Limit the verbosity of memory context statistics dumps.
- 7b5ef8f2d070 9.6.0 cited