| From: | Andres Freund <andres(at)anarazel(dot)de> |
|---|---|
| To: | Greg Burd <greg(at)burd(dot)me> |
| Cc: | Jeff Davis <pgsql(at)j-davis(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: Expanding HOT updates for expression and partial indexes |
| Date: | 2026-02-19 20:43:04 |
| Message-ID: | akciabcu3b2hchj7adxhu4kovfaozp2pcn2z7sdljfthxcyg4o@7e6sfyzipvyy |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
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.
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.
Greetings,
Andres Freund
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Sami Imseih | 2026-02-19 22:08:59 | Re: Flush some statistics within running transactions |
| Previous Message | Nathan Bossart | 2026-02-19 20:40:59 | Re: assume availability of "inline" keyword |