At Mon, 5 Sep 2022 08:52:44 +0200, "Drouvot, Bertrand" <bdrou...@amazon.com> wrote in > Could using TopMemoryContext like in the attach be an option? (aka > changing CacheMemoryContext by TopMemoryContext in the 3 places of > interest): that would ensure the 3 pgStat* contexts to have a non NULL > parent context.
Of course it works. The difference from what I last proposed is whether we postpone creating the memory contexts until the first call to pgstat_get_entry_ref(). The rationale of creating them at pgstat_attach_shmem is that anyway once pgstat_attach_shmem is called, the process fainally creates the contexts at the end of the process, and (I think) it's simpler that we don't do if() check at every pgstat_get_entry_ref() call. I forgot about pgStatPendingContext, but it is sensible that we treat it the same way to the other two. regards. -- Kyotaro Horiguchi NTT Open Source Software Center