Re: enhance pg_log_backend_memory_contexts() to log memory contexts of auxiliary processes

torikoshia <torikoshia@oss.nttdata.com>

From: torikoshia <torikoshia@oss.nttdata.com>
To: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-10-11T02:51:18Z
Lists: pgsql-hackers
Thanks for working on this!

On 2021-10-09 22:23, Bharath Rupireddy wrote:
> Hi,
> 
> Currently pg_log_backend_memory_contexts() doesn't log the memory
> contexts of auxiliary processes such as bgwriter, checkpointer, wal
> writer, archiver, startup process and wal receiver. It will be useful
> to look at the memory contexts of these processes too, for debugging
> purposes and better understanding of the memory usage pattern of these
> processes.

As the discussion below, we thought logging memory contexts of other 
than client backends is possible but were not sure how useful it is.
After all, we have ended up restricting the target process to client 
backends for now.

   
https://www.postgresql.org/message-id/0b0657d5febd0e46565a6bc9c62ba3f6%40oss.nttdata.com

If we can use debuggers, it's possible to know the memory contexts e.g. 
using MemoryContextStats().
So IMHO if it's necessary to know memory contexts without attaching gdb 
for other than client backends(probably this means using under 
production environment), this enhancement would be pay.

-- 
Regards,

--
Atsushi Torikoshi
NTT DATA CORPORATION



Commits

  1. Enhance pg_log_backend_memory_contexts() for auxiliary processes.