On Wed, Mar 13, 2019 at 4:38 PM Robert Haas <robertmh...@gmail.com> wrote: > On Wed, Mar 13, 2019 at 4:18 PM Tom Lane <t...@sss.pgh.pa.us> wrote: > > Off topic for the moment, since this clearly wouldn't be back-patch > > material, but I'm starting to wonder if we should just have a context > > for each relcache entry and get rid of most or all of the retail > > cleanup logic in RelationDestroyRelation ... > > I think that idea might have a lot of merit, but I haven't studied it closely.
It just occurred to me that one advantage of this would be that you could see how much memory was being used by each relcache entry using MemoryContextStats(), which seems super-appealing. In fact, what about getting rid of all allocations in CacheMemoryContext itself in favor of some more specific context in each case? That would make it a lot clearer where to look for leaks -- or efficiencies. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company