Re: Pass heaprel to GlobalVisTestFor() in vacuumRedirectAndPlaceholder()
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Peter Geoghegan <pg@bowt.ie>
Cc: "Drouvot, Bertrand" <bertranddrouvot.pg@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-04-03T00:19:45Z
Lists: pgsql-hackers
Hi, On 2023-04-02 15:52:14 -0700, Peter Geoghegan wrote: > On Sun, Apr 2, 2023 at 3:30 PM Andres Freund <andres@anarazel.de> wrote: > > > Actually, I suppose that isn't quite true, since you'd still need to > > > find a way to pass the heap relation down to nbtree VACUUM. Say by > > > adding it to IndexVacuumInfo. > > > > It has been added to that already, so it should really be as trivial as you > > suggested earlier... > > Oh yeah, I missed it because you put it at the end of the struct, > rather than at the start, next to the existing Relation. Well, Bertrand. But I didn't change it, so you're not wrong... > This page deletion issue matters a lot more after the Postgres 14 > optimization added by commit e5d8a99903, which came after your > GlobalVisCheckRemovableFullXid() snapshot scalability work (well, a > few months after, at least). I really don't like the idea of something > like that being much less effective due to logical decoding. Yea, it's definitely good to use the relation there. Greetings, Andres Freund
Commits
-
Make SP-GiST redirect cleanup more aggressive.
- 05a304a85510 16.0 landed
-
Recycle deleted nbtree pages more aggressively.
- e48c817395e1 16.0 landed
-
Move heaprel struct field next to index rel field.
- a349b86603e1 16.0 landed
-
Pass down table relation into more index relation functions
- 61b313e47eb9 16.0 cited
-
Use full 64-bit XIDs in deleted nbtree pages.
- e5d8a9990304 14.0 cited