Re: Expanding HOT updates for expression and partial indexes - Mailing list pgsql-hackers

From Greg Burd
Subject Re: Expanding HOT updates for expression and partial indexes
Date
Msg-id b8e07500-587d-4360-8f9e-89b14d1c0edc@app.fastmail.com
Whole thread Raw
In response to Re: Expanding HOT updates for expression and partial indexes  (Andres Freund <andres@anarazel.de>)
Responses Re: Expanding HOT updates for expression and partial indexes
List pgsql-hackers
On Thu, Feb 19, 2026, at 3:43 PM, Andres Freund wrote:
> Hi,
>
> On 2026-02-17 16:15:02 -0500, Greg Burd wrote:
>> > Why does simple_heap_update() need to do the HeapDetermineColumnsInfo()
>> > inside heap_update()? It seems like you're trying to avoid doing the
>> > same work the executor is doing to determine the modified_attrs bitmap,
>> > but either (a) the work is cheap; or (b) the work to make the bitmap is
>> > expensive.
>> 
>> simple_heap_update() is exclusively called during catalog tuple updates and
>> does not involve the executor at all, these are direct calls into heap to
>> store catalog tuples.

Hey Andres,

> Just FYI, there are probably a fair number of extensions using
> simple_heap_update().  That number used to be a lot higher, but I don't think
> there should be a hard assumption about it just being used for catalog updates
> in the code.

Makes sense.  These patches don't change simple_heap_update() in any functional way and so extensions should be fine.

> Greetings,
>
> Andres Freund

best.

-greg



pgsql-hackers by date:

Previous
From: Sami Imseih
Date:
Subject: Re: Flush some statistics within running transactions
Next
From: KAZAR Ayoub
Date:
Subject: Re: Speed up COPY FROM text/CSV parsing using SIMD