Re: eliminate xl_heap_visible to reduce WAL (and eventually set VM on-access)
От | Kirill Reshke |
---|---|
Тема | Re: eliminate xl_heap_visible to reduce WAL (and eventually set VM on-access) |
Дата | |
Msg-id | CALdSSPg1=Zi3=1Tv7kT_FrjxvTYyT6LvHVgppSLz+bWjwms6YA@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: eliminate xl_heap_visible to reduce WAL (and eventually set VM on-access) (Melanie Plageman <melanieplageman@gmail.com>) |
Ответы |
Re: eliminate xl_heap_visible to reduce WAL (and eventually set VM on-access)
|
Список | pgsql-hackers |
On Wed, 3 Sept 2025 at 04:11, Melanie Plageman <melanieplageman@gmail.com> wrote: > > On Tue, Sep 2, 2025 at 5:52 PM Melanie Plageman > <melanieplageman@gmail.com> wrote: > > > > On Thu, Aug 28, 2025 at 5:12 AM Kirill Reshke <reshkekirill@gmail.com> wrote: > > > > > > I did micro git-blame research here. I spotted only one related change > > > [0]. Looks like before this change pin was indeed needed. > > > But not after this change, so this visibilitymap_pin is just an oversight? > > > Related thread is [1]. I quickly checked the discussion in this > > > thread, and it looks like no one was bothered about these lines or VM > > > logging changes (in this exact pin buffer aspect). The discussion was > > > of other aspects of this commit. > > > > Wow, thanks so much for doing that research. Looking at it myself, it > > does indeed seem like just an oversight. It isn't harmful since it > > won't take another pin, but it is confusing, so I think we should at > > least remove it in master. I'm not as sure about back branches. > > I've updated the commit message in the patch set to reflect the > research you did in attached v8. > > - Melanie Hi! small comments regarding new series 0001, 0002, 0017 LGTM In 0015: ``` reshke@yezzey-cbdb-bench:~/postgres$ git diff src/backend/access/heap/pruneheap.c diff --git a/src/backend/access/heap/pruneheap.c b/src/backend/access/heap/pruneheap.c index 05b51bd8d25..0794af9ae89 100644 --- a/src/backend/access/heap/pruneheap.c +++ b/src/backend/access/heap/pruneheap.c @@ -1398,7 +1398,7 @@ heap_prune_record_unchanged_lp_normal(Page page, PruneState *prstate, OffsetNumb /* * For now always use prstate->cutoffs for this test, because * we only update 'all_visible' when freezing is requested. We - * could use GlobalVisTestIsRemovableXid instead, if a + * could use GlobalVisXidVisibleToAll instead, if a * non-freezing caller wanted to set the VM bit. */ Assert(prstate->cutoffs); ``` Also, maybe GlobalVisXidTestAllVisible is a slightly better name? (The term 'all-visible' is one that we occasionally utilize) -- Best regards, Kirill Reshke
В списке pgsql-hackers по дате отправления: