Re: Opportunistically pruning page before update

From: James Coleman <jtc331(at)gmail(dot)com>
To: Dilip Kumar <dilipbalaut(at)gmail(dot)com>
Cc: Peter Smith <smithpb2250(at)gmail(dot)com>, Melanie Plageman <melanieplageman(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Andres Freund <andres(at)anarazel(dot)de>, Peter Geoghegan <pg(at)bowt(dot)ie>
Subject: Re: Opportunistically pruning page before update
Date: 2024-01-27 01:33:37
Message-ID: CAAaqYe-bS+nDA=APKy9JQSWKU6tT6Gkph3Vkv4pCaFZ=S9BJxQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jan 23, 2024 at 2:46 AM Dilip Kumar <dilipbalaut(at)gmail(dot)com> wrote:
>
> On Tue, Jan 23, 2024 at 7:18 AM James Coleman <jtc331(at)gmail(dot)com> wrote:
> >
> > On Mon, Jan 22, 2024 at 8:21 PM James Coleman <jtc331(at)gmail(dot)com> wrote:
> > >
> > > See rebased patch attached.
> >
> > I just realized I left a change in during the rebase that wasn't necessary.
> >
> > v4 attached.
>
> I have noticed that you are performing the opportunistic pruning after
> we decided that the updated tuple can not fit in the current page and
> then we are performing the pruning on the new target page. Why don't
> we first perform the pruning on the existing page of the tuple itself?
> Or this is already being done before this patch? I could not find
> such existing pruning so got this question because such pruning can
> convert many non-hot updates to the HOT update right?

First off I noticed that I accidentally sent a different version of
the patch I'd originally worked on. Here's the one from the proper
branch. It's still similar, but I want to make sure the right one is
being reviewed.

I'm working on a demo case for updates (to go along with the insert
case I sent earlier) to test out your question, and I'll reply when I
have that.

Regards,
James Coleman

Attachment Content-Type Size
v5-0004-log-when-pruning-2.patch application/octet-stream 1.6 KB
v5-0002-log-when-pruning.patch application/octet-stream 2.6 KB
v5-0003-Opportunistically-prune-to-avoid-building-a-new-p.patch application/octet-stream 3.7 KB
v5-0001-Allow-getting-lock-before-calling-heap_page_prune.patch application/octet-stream 4.2 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message vignesh C 2024-01-27 01:48:59 Re: [PoC/RFC] Multiple passwords, interval expirations
Previous Message David E. Wheeler 2024-01-26 23:24:28 Re: Bug: The "directory" control parameter does not work