Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-07-31 Thread Pavel Luzanov
On 31.07.2025 16:31, Melanie Plageman wrote: If you eager scan and fail to freeze 3% of each region, you'll have eager scanned and failed to freeze 3% of the blocks in the table -- so the total cap is the same. OhmyGod!Whata stupidmistakeI made. Imultipliedthe numberof regionsby3%:-) Documentin

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-07-31 Thread Melanie Plageman
On Thu, Jul 31, 2025 at 7:05 AM Pavel Luzanov wrote: > > I have a question about the documentation. > > From description of the vacuum_max_eager_freeze_failure_rate [1] > > "Specifies the maximum number of pages (as a fraction of total pages in > the relation) that VACUUM may scan and fail to set

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-07-31 Thread Pavel Luzanov
Hello, I have a question about the documentation. From description of the vacuum_max_eager_freeze_failure_rate [1] "Specifies the maximum number of pages (as a fraction of total pages in the relation) that VACUUM may scan and fail to set all-frozen in the visibility map before disabling eager

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-11 Thread Melanie Plageman
On Tue, Feb 11, 2025 at 11:31 AM Andres Freund wrote: > > On 2025-02-05 12:23:29 -0500, Melanie Plageman wrote: > > Attached v16 implements the logic to not count pages we failed to > > freeze because of cleanup lock contention as eager freeze failures. > > That looks good to me. Cool. Committed

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-11 Thread Andres Freund
On 2025-02-05 12:23:29 -0500, Melanie Plageman wrote: > Attached v16 implements the logic to not count pages we failed to > freeze because of cleanup lock contention as eager freeze failures. That looks good to me.

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-11 Thread Andres Freund
Hi, On 2025-02-10 14:30:15 -0500, Robert Haas wrote: > On Wed, Feb 5, 2025 at 12:23 PM Melanie Plageman > wrote: > > I started getting worried thinking about this. If you have a cursor > > for select * from a table and fetch forward far enough, couldn't > > vacuum fail to get cleanup locks on a w

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-11 Thread Melanie Plageman
n. Anyway, I've updated the comment to be more correct I think. - Melanie From f713f7b3ca33e3cf5825706b86740c5f8f1e5ad6 Mon Sep 17 00:00:00 2001 From: Melanie Plageman Date: Mon, 27 Jan 2025 12:23:00 -0500 Subject: [PATCH v17] Eagerly scan all-visible pages to amortize aggressive vacuum Aggressiv

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-10 Thread Andres Freund
Hi, On 2025-02-04 12:44:22 -0500, Melanie Plageman wrote: > On Mon, Feb 3, 2025 at 9:09 PM Andres Freund wrote: > > > + /* > > > + * Now calculate the eager scan start block. Start at a random spot > > > + * somewhere within the first eager scan region. This avoids eager > > > +

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-10 Thread Robert Haas
On Wed, Feb 5, 2025 at 12:23 PM Melanie Plageman wrote: > I started getting worried thinking about this. If you have a cursor > for select * from a table and fetch forward far enough, couldn't > vacuum fail to get cleanup locks on a whole range of blocks? I don't think so. A given scan holds at m

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-05 Thread Melanie Plageman
27;m correct about that, but if I had to > guess, my guess would be "rare scenario". I've not done this in the attached v16. I have added a comment about it. I think not doing it is a judgment call and not a bug, right? - Melanie From 8bfe510f260066de91f77d704b4eb8c01d67de40 M

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-05 Thread Robert Haas
On Tue, Feb 4, 2025 at 5:34 PM Melanie Plageman wrote: > I think I misspoke when I said we are unlikely to have contended > all-visible pages. I suppose it is trivial to concoct a scenario where > there are many pinned all-visible pages. It's hard to keep heap pages pinned for a really long time,

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-04 Thread Melanie Plageman
On Tue, Feb 4, 2025 at 3:55 PM Robert Haas wrote: > > On Tue, Feb 4, 2025 at 2:57 PM Robert Treat wrote: > > > Yea, I thought that counting them as failures made sense because we > > > did fail to freeze them. However, now that you mention it, we didn't > > > fail to freeze them because of age, s

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-04 Thread Robert Haas
On Tue, Feb 4, 2025 at 2:57 PM Robert Treat wrote: > > Yea, I thought that counting them as failures made sense because we > > did fail to freeze them. However, now that you mention it, we didn't > > fail to freeze them because of age, so maybe we don't want to count > > them as failures. I don't

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-04 Thread Robert Treat
On Tue, Feb 4, 2025 at 12:44 PM Melanie Plageman wrote: > On Mon, Feb 3, 2025 at 9:09 PM Andres Freund wrote: > > > > On 2025-01-29 14:12:52 -0500, Melanie Plageman wrote: > > > From 71f32189aad510b73d221fb0478ffd916e5e5dde Mon Sep 17 00:00:00 2001 > > > From: Melanie Plageman > > > > @@ -1064,7

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-04 Thread Melanie Plageman
:23:00 -0500 > > Subject: [PATCH v14] Eagerly scan all-visible pages to amortize aggressive > > vacuum > > > > Amortize the cost of an aggressive vacuum by eagerly scanning some > > all-visible but not all-frozen pages during normal vacuums. > > I think it'd be g

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-04 Thread Robert Haas
On Mon, Feb 3, 2025 at 9:09 PM Andres Freund wrote: > > + > xreflabel="vacuum_max_eager_freeze_failure_rate"> > > + vacuum_max_eager_freeze_failure_rate > > (floating point) > > + > > + vacuum_max_eager_freeze_failure_rate > > configuration parameter > > + > > +

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-02-03 Thread Andres Freund
Hi, On 2025-01-29 14:12:52 -0500, Melanie Plageman wrote: > From 71f32189aad510b73d221fb0478ffd916e5e5dde Mon Sep 17 00:00:00 2001 > From: Melanie Plageman > Date: Mon, 27 Jan 2025 12:23:00 -0500 > Subject: [PATCH v14] Eagerly scan all-visible pages to amortize aggressive > vacuu

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-29 Thread Melanie Plageman
On Wed, Jan 29, 2025 at 12:59 PM Masahiko Sawada wrote: > > I missed to mention; it's about the tab completion for > vacuum_max_easter_freeze_failure storage parameter. We still need to > update the tab-complete.in.c file (I mentioned the wrong file > previously) for that. Ah, thanks! I didn't re

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-29 Thread Masahiko Sawada
On Wed, Jan 29, 2025 at 6:08 AM Melanie Plageman wrote: > > On Tue, Jan 28, 2025 at 4:38 PM Masahiko Sawada wrote: > > > > > > Thank you for updating the patch! These updates look good to me. > > Thanks for taking another look! > > > BTW I realized that we need to update tab-complete.c too to sup

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-29 Thread Melanie Plageman
On Fri, Jan 24, 2025 at 11:20 AM Robert Haas wrote: > > On Fri, Jan 24, 2025 at 9:15 AM Melanie Plageman > wrote: > > So, in this case, there is only one table in question, so 1 autovacuum > > worker (and up to 2 maintenance parallel workers for index vacuuming). > > The duration I provided is ju

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-29 Thread Melanie Plageman
version 13 attached. On Tue, Jan 28, 2025 at 1:49 PM Robert Treat wrote: > > On Mon, Jan 27, 2025 at 12:45 PM Melanie Plageman > wrote: > > > > On Fri, Jan 24, 2025 at 3:43 PM Robert Haas wrote: > > > > > > On Fri, Jan 24, 2025 at 3:02 PM Melanie Plageman > > > wrote: > > attached v11 uses a f

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-29 Thread Melanie Plageman
On Tue, Jan 28, 2025 at 4:38 PM Masahiko Sawada wrote: > > > Thank you for updating the patch! These updates look good to me. Thanks for taking another look! > BTW I realized that we need to update tab-complete.c too to support > the tab-completion for vacuum_max_eager_freeze_failure_rate. I'm

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-28 Thread Masahiko Sawada
On Mon, Jan 27, 2025 at 1:22 PM Melanie Plageman wrote: > > On Mon, Jan 27, 2025 at 12:52 PM Masahiko Sawada > wrote: > > > > Thank you for updating the patch. I was reviewing the v10 patch and > > had some comments. I believe these comments are still valid for v11, > > but please ignore them if

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-28 Thread Robert Treat
On Mon, Jan 27, 2025 at 12:45 PM Melanie Plageman wrote: > > On Fri, Jan 24, 2025 at 3:43 PM Robert Haas wrote: > > > > On Fri, Jan 24, 2025 at 3:02 PM Melanie Plageman > > wrote: > attached v11 uses a fraction with this name. It follows the > conventions and I find it descriptive. > > Changing

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-27 Thread Melanie Plageman
On Mon, Jan 27, 2025 at 12:52 PM Masahiko Sawada wrote: > > Thank you for updating the patch. I was reviewing the v10 patch and > had some comments. I believe these comments are still valid for v11, > but please ignore them if outdated. Thanks so much for the review! > + if (TransactionIdI

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-27 Thread Masahiko Sawada
On Mon, Jan 27, 2025 at 9:45 AM Melanie Plageman wrote: > > On Fri, Jan 24, 2025 at 3:43 PM Robert Haas wrote: > > > > On Fri, Jan 24, 2025 at 3:02 PM Melanie Plageman > > wrote: > > > I think you're right. I would go with a percentage. I don't see many > > > other GUCs that are percents. What w

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-27 Thread Melanie Plageman
On Fri, Jan 24, 2025 at 3:43 PM Robert Haas wrote: > > On Fri, Jan 24, 2025 at 3:02 PM Melanie Plageman > wrote: > > I think you're right. I would go with a percentage. I don't see many > > other GUCs that are percents. What would you call it? Perhaps > > vacuum_eager_scan_fail_threshold? The % o

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-27 Thread Robert Haas
On Sun, Jan 26, 2025 at 3:11 PM Robert Treat wrote: > Hmm... isn't "don't try" really more logically equivalent to "stop > after zero failures", with "try until zero failures" more of the > inverse... more like "never stop never stopping"? No. Or at least, I don't think that's how English works.

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-26 Thread Robert Treat
On Fri, Jan 24, 2025 at 3:43 PM Robert Haas wrote: > On Fri, Jan 24, 2025 at 3:02 PM Melanie Plageman > wrote: > > This thought exercise made me realize something is wrong with my > > current patch, though. If you set the failure tolerance > > (vacuum_eager_scan_max_fails) to 0 right now, it disa

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-26 Thread Robert Treat
On Fri, Jan 24, 2025 at 3:43 PM Robert Haas wrote: > On Fri, Jan 24, 2025 at 3:02 PM Melanie Plageman > wrote: > > > > > + ereport(INFO, > > > + (errmsg("Vacuum successfully froze %u eager scanned blocks of > > > \"%s.%s.%s\". Now disabling eager scanning.", > > > > > > I predict that if Tom sees

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-24 Thread Robert Haas
On Fri, Jan 24, 2025 at 3:02 PM Melanie Plageman wrote: > This thought exercise made me realize something is wrong with my > current patch, though. If you set the failure tolerance > (vacuum_eager_scan_max_fails) to 0 right now, it disables eager > scanning altogether. That might be unexpected. Yo

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-24 Thread Melanie Plageman
Thanks for the review! Attached v10 addresses the review feedback except that about the GUC/table option meaning and format. On Thu, Jan 23, 2025 at 2:22 PM Robert Haas wrote: > > On Thu, Jan 23, 2025 at 1:31 PM Robert Haas wrote: > > > > On Wed, Jan 22, 2025 at 5:48 PM Melanie Plageman > > wro

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-24 Thread Robert Haas
On Fri, Jan 24, 2025 at 9:15 AM Melanie Plageman wrote: > So, in this case, there is only one table in question, so 1 autovacuum > worker (and up to 2 maintenance parallel workers for index vacuuming). > The duration I provided is just the absolute duration from start of > vacuum to finish -- not

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-24 Thread Melanie Plageman
On Thu, Jan 23, 2025 at 12:16 PM Robert Haas wrote: > > On Wed, Jan 22, 2025 at 5:48 PM Melanie Plageman > wrote: > > Circling back to benchmarking, I've been running the most adversarial > > benchmarks I could devise and can share a bit of what I've found. > > > > I created a "hot tail" benchmar

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-23 Thread Robert Haas
On Wed, Jan 22, 2025 at 5:48 PM Melanie Plageman wrote: > Circling back to benchmarking, I've been running the most adversarial > benchmarks I could devise and can share a bit of what I've found. > > I created a "hot tail" benchmark where 16 clients insert some data and > then update some data ol

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-23 Thread Robert Haas
On Thu, Jan 23, 2025 at 1:31 PM Robert Haas wrote: > > On Wed, Jan 22, 2025 at 5:48 PM Melanie Plageman > wrote: > > Thanks! Attached v9 incorporates all your suggested changes. > > I'm not exactly sure what to do about it, but I feel like the > documentation of vacuum_eager_scan_max_fails is goi

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-23 Thread Robert Haas
On Wed, Jan 22, 2025 at 5:48 PM Melanie Plageman wrote: > Thanks! Attached v9 incorporates all your suggested changes. I'm not exactly sure what to do about it, but I feel like the documentation of vacuum_eager_scan_max_fails is going to be incomprehensible to someone who doesn't already have a d

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-22 Thread Melanie Plageman
have to assume that the extra time spent vacuuming comes with no benefit to offset the cost in the worst case. The question is, is this extra time spent vacuuming in the worst case acceptable? - Melanie From 3171aa3ac3380506c24c37c95ab21d8f3d10508d Mon Sep 17 00:00:00 2001 From: Melanie Plage

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-18 Thread Robert Treat
On Wed, Jan 15, 2025 at 3:56 PM Melanie Plageman wrote: > On Wed, Jan 15, 2025 at 3:03 PM Melanie Plageman > wrote: > > > > On Wed, Jan 15, 2025 at 2:36 PM Marcos Pegoraro wrote: > > >> > > > There is a typo on committed vacuumlazy.c file > > > * If the TID store fills up in phase I, vacuum sus

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-15 Thread Alena Rybakina
On 15.01.2025 23:09, Melanie Plageman wrote: On Wed, Jan 15, 2025 at 12:08 PM Alena Rybakina wrote: This is interesting, but I think it might belong as commentary in vacuumparallel.c instead. I added some description about it, I hope it is fine. I attached vacuum_description.diff Alena, tha

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-15 Thread Melanie Plageman
On Wed, Jan 15, 2025 at 3:03 PM Melanie Plageman wrote: > > On Wed, Jan 15, 2025 at 2:36 PM Marcos Pegoraro wrote: > >> > > There is a typo on committed vacuumlazy.c file > > * If the TID store fills up in phase I, vacuum suspends phase I, proceeds > > to > > * phases II and II, cleaning up th

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-15 Thread Melanie Plageman
On Wed, Jan 15, 2025 at 12:08 PM Alena Rybakina wrote: > > This is interesting, but I think it might belong as commentary in > vacuumparallel.c instead. > > I added some description about it, I hope it is fine. I attached > vacuum_description.diff Alena, thanks again for your review. I pushed th

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-15 Thread Melanie Plageman
On Wed, Jan 15, 2025 at 2:36 PM Marcos Pegoraro wrote: >> >> On 14.01.2025 22:51, Melanie Plageman wrote: > > > There is a typo on committed vacuumlazy.c file > * If the TID store fills up in phase I, vacuum suspends phase I, proceeds to > * phases II and II, cleaning up the dead tuples referenc

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-15 Thread Marcos Pegoraro
> > On 14.01.2025 22:51, Melanie Plageman wrote: > There is a typo on committed vacuumlazy.c file * If the TID store fills up in phase I, vacuum suspends phase I, proceeds to * phases II and II, cleaning up the dead tuples referenced in the current TID * store. This empties the TID store resume

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-15 Thread Alena Rybakina
On 14.01.2025 22:51, Melanie Plageman wrote: On Mon, Jan 13, 2025 at 5:37 PM Alena Rybakina wrote: Thank you for working on this patch, without this explanation it is difficult to understand what is happening, to put it mildly. Thanks for the review! I've incorporated most of them into attac

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-14 Thread Melanie Plageman
hink it might belong as commentary in vacuumparallel.c instead. Thanks again for your close reading and detailed thoughts! - Melanie From d579e6fa22982f66b7e23efc80e7e528d2059d51 Mon Sep 17 00:00:00 2001 From: Melanie Plageman Date: Tue, 7 Jan 2025 09:48:34 -0500 Subject: [PATCH v7 2/2] Eagerly

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-13 Thread Alena Rybakina
Hi! On 14.01.2025 00:46, Melanie Plageman wrote: On Thu, Jan 9, 2025 at 1:24 PM Andres Freund wrote: On 2025-01-07 15:46:26 -0500, Melanie Plageman wrote: For table storage options, those related to vacuum but not autovacuum are in the main StdRdOptions struct. Of those, some are overridden b

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-13 Thread Melanie Plageman
hot tail workload with a job that deletes old data. - Melanie From a5080bb6c630af932451d56a0931c9bc96eb8417 Mon Sep 17 00:00:00 2001 From: Melanie Plageman Date: Tue, 7 Jan 2025 09:48:34 -0500 Subject: [PATCH v6 2/2] Eagerly scan all-visible pages to amortize aggressive vacuum Introduce eager

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-09 Thread Andres Freund
Hi, On 2025-01-07 15:46:26 -0500, Melanie Plageman wrote: > For table storage options, those related to vacuum but not autovacuum > are in the main StdRdOptions struct. Of those, some are overridden by > VACUUM command parameters which are parsed out into the VacuumParams > struct. Though the memb

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2025-01-07 Thread Melanie Plageman
lageman Date: Tue, 7 Jan 2025 09:48:34 -0500 Subject: [PATCH v5 3/3] Eagerly scan all-visible pages to amortize aggressive vacuum Introduce eager scanning normal vacuums, in which vacuum scans some of the all-visible but not all-frozen pages in the relation to amortize the cost of an aggressive va

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2024-12-23 Thread Melanie Plageman
On Sat, Dec 21, 2024 at 10:28 AM Robert Treat wrote: > > On Tue, Dec 17, 2024 at 5:51 PM Melanie Plageman > wrote: > > > It feels to me like eager vacuums are not so much a distinct thing, > but that, like how all vacuum do index cleanup unless told not to, all > vacuums are optimistic that they

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2024-12-23 Thread Melanie Plageman
e in the visibility map. We may choose not + * to skip pages if the range of skippable pages is below + * SKIP_PAGES_THRESHOLD. + * + * Once vacuum has decided to scan a given block, it must read in the block + * and obtain a cleanup lock to prune tuples on the page. A non-aggressive + * vacuum ma

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2024-12-21 Thread Robert Treat
On Tue, Dec 17, 2024 at 5:51 PM Melanie Plageman wrote: > > Thanks for taking a look! > > I've rebased and attached an updated v3 which also addresses review feedback. > > On Sun, Dec 15, 2024 at 1:05 AM Robert Treat wrote: > > On Fri, Dec 13, 2024 at 5:53 PM Melanie Plageman > > wrote: > > So,

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2024-12-18 Thread Robert Haas
On Tue, Dec 17, 2024 at 5:54 PM Melanie Plageman wrote: > Makes sense. I've attempted to clarify as you suggest in v3. I would just commit 0001. There's nothing to be gained by waiting around. I don't care about 0002 much. It doesn't seem particularly better or worse. I would suggest that if you

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2024-12-17 Thread Melanie Plageman
Thanks for the review! On Tue, Dec 17, 2024 at 10:57 AM Nazir Bilal Yavuz wrote: > > Here are couple of code comments: > > === [PATCH v2 07/10] === > > It took me a while to understand that heap_vac_scan_next_block() loops > until rel_pages. What do you think about adding > Assert(vacrel->current

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2024-12-17 Thread Nazir Bilal Yavuz
Hi, Thank you for working on this! On Sat, 14 Dec 2024 at 01:53, Melanie Plageman wrote: > > On Thu, Nov 7, 2024 at 10:42 AM Andres Freund wrote: > > > > Hi, > > Thanks for the review! > Attached v2 should address your feedback and also fixes a few bugs with v1. Here are couple of code comment

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2024-12-14 Thread Robert Treat
16 > > > > Hm. It's not clear to me why other_rw is higher with the patch? After all, > > given the workload, there's no chance of unnecessarily freezing tuples? Is > > that just because at the end of the benchmark there's leftover work? > > So oth

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2024-12-13 Thread Melanie Plageman
uumed in three main phases. In the first phase, > > + * vacuum scans relation pages, pruning and freezing tuples and saving dead > > + * tuples' TIDs in a TID store. If that TID store fills up or vacuum > > finishes > > + * scanning the relation, it progresses to

Re: Eagerly scan all-visible pages to amortize aggressive vacuum

2024-11-07 Thread Andres Freund
in three main phases. In the first phase, > + * vacuum scans relation pages, pruning and freezing tuples and saving dead > + * tuples' TIDs in a TID store. If that TID store fills up or vacuum finishes > + * scanning the relation, it progresses to the second phase: index vacuuming. >