On Mon, Mar 16, 2020 at 2:45 PM Jeff Davis <pg...@j-davis.com> wrote: > Attached is a patch that makes mem_allocated a method (rather than a > field) of MemoryContext, and allows each memory context type to track > the memory its own way. They all do the same thing as before > (increment/decrement a field), but AllocSet also subtracts out the free > space in the current block. For Slab and Generation, we could do > something similar, but it's not as much of a problem because there's no > doubling of the allocation size. > > Although I think this still matches the word "allocation" in spirit, > it's not technically correct, so feel free to suggest a new name for > MemoryContextMemAllocated().
Procedurally, I think that it is highly inappropriate to submit a patch two weeks after the start of the final CommitFest and then commit it just over 48 hours later without a single endorsement of the change from anyone. Substantively, I think that whether or not this is improvement depends considerably on how your OS handles overcommit. I do not have enough knowledge to know whether it will be better in general, but would welcome opinions from others. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company