Previously, MemoryContextStats() simply emitted a line of output for
each MemoryContext. This is fine, but it makes it difficult to see the
shape of the MemoryContext hierarchy. Attached is a trivial patch to
indent each context by "4 * level" spaces, where "level" is the depth of
the node within the subtree printed by MemoryContextStats().
For example, suppose we have three contexts beneath TopMemoryContext:
TopMemoryContext (...)
FooContext (...)
BarContext (...)
BazContext (...)
With the patch, these might be printed as:
TopMemoryContext (...)
FooContext (...)
BarContext (...)
BazContext (...)
Assuming that's the parent/child relationship between them, of course.
Obviously this is just for debugging, but I've found it useful while
looking at some memory-related issues. Any comments or objections to
including this in HEAD?
-Neil