Make levels 1-based in pg_log_backend_memory_contexts()
authorDavid Rowley <drowley@postgresql.org>
Thu, 17 Apr 2025 21:04:28 +0000 (09:04 +1200)
committerDavid Rowley <drowley@postgresql.org>
Thu, 17 Apr 2025 21:04:28 +0000 (09:04 +1200)
commitd9e03864b6b4c7fe2988393c22e2355786c4c1f7
treebdc6998fe23f76c7764f97fd2f48d758bc3c81e9
parentfc5e966f73f06ab2b3e7fa488fc2712d77639947
Make levels 1-based in pg_log_backend_memory_contexts()

Both pg_get_process_memory_contexts() and pg_backend_memory_contexts
have 1-based levels, whereas pg_log_backend_memory_contexts() was using
0-based levels.  Align these.

This results in slightly saner behavior from MemoryContextStatsDetail()
in regards to the max_level.  Previously it would stop at 1 level before
the maximum requested level rather than at that level.

Reported-by: Atsushi Torikoshi <torikoshia@oss.nttdata.com>
Author: Atsushi Torikoshi <torikoshia@oss.nttdata.com>
Author: David Rowley <drowleyml@gmail.com
Reviewed-by: Melih Mutlu <m.melihmutlu@gmail.com>
Reviewed-by: Rahila Syed <rahilasyed90@gmail.com>
Discussion: https://postgr.es/m/395ea5d4fe190480efa95bf533485c70@oss.nttdata.com
src/backend/utils/mmgr/mcxt.c