Robert Haas <robertmhaas@gmail.com> writes:
> it does make me wonder whether there's any point in retaining
> CacheMemoryContext at all.
Well, as per backend/utils/mmgr/README:
CacheMemoryContext --- permanent storage for relcache, catcache, and related modules. This will never be reset or
deleted,either, so it's not truly necessary to distinguish it from TopMemoryContext. But it seems worthwhile to
maintainthe distinction for debugging purposes.
I'm not sure about the word "maintain" here; I can't recall whether
there was any comparable concept before we invented the memory context
mechanism. But I still think it's useful to distinguish cache activity
from generic permanent memory allocations.
regards, tom lane