Michael Paquier <michael@paquier.xyz> writes:
> With connection poolers letting the connections to the server be around
> for a long time, wouldn't it be an issue to let this much memory live
> longer than the transaction context? The deeper the stack, the more
> memory consumed, hence the more OS cache that PostgreSQL cannot use. So
> this could impact performance for some loads. I would vote for cleaning
> up this memory instead of letting it live unused in TopMemoryContext.
It's only ~100 bytes per stack level. I think under normal loads
nobody would notice. If you're worried about cross-transaction
memory consumption, our various caches tend to be a lot worse.
regards, tom lane