Re: Expanding HOT updates for expression and partial indexes

From: "Greg Burd" <greg(at)burd(dot)me>
To: "Jeff Davis" <pgsql(at)j-davis(dot)com>, "Nathan Bossart" <nathandbossart(at)gmail(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Expanding HOT updates for expression and partial indexes
Date: 2026-03-17 18:04:11
Message-ID: d7489d3e-2cbd-4b0f-b662-b5c4386a3f1e@app.fastmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


On Tue, Mar 17, 2026, at 12:38 PM, Jeff Davis wrote:
> On Mon, 2026-03-16 at 16:51 -0400, Greg Burd wrote:
>> > Also, the "actually changed values" is only valid for a single
>> > tuple,
>> > and it would be good to clarify that and make sure there's not a
>> > lot of
>> > room for confusion there.
>>
>> Yes, that's true... too much confusion and not enough juice for the
>> squeeze.  I'm dropping that.
>
> That is an interesting case you found in that the columns targeted by
> an update are not a superset of the columns with actually changed
> values. But I'm not sure exactly what to make of that fact, and if it's
> not important for your other changes then I agree that we should drop
> it.
>
> However, it might be good to comment somewhere that your changes (which
> are based on values in specific tuples) cannot rely on
> ExecGetAllUpdatedCols(), to avoid confusion in the future.

Fair point, I'll do that.

> Regards,
> Jeff Davis

v37 attached with changes you and Nathan asked for so far. More please! :)

thanks Jeff and Nathan!

best.

-greg

Attachment Content-Type Size
v37-0001-Add-tests-to-cover-a-variety-of-heap-HOT-update-.patch text/x-patch 45.3 KB
v37-0002-Identify-modified-indexed-attributes-in-the-exec.patch text/x-patch 61.4 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Alena Rybakina 2026-03-17 18:11:46 Re: Vacuum statistics
Previous Message Tomas Vondra 2026-03-17 17:51:15 Re: EXPLAIN: showing ReadStream / prefetch stats