Re: add PROCESS_MAIN to VACUUM
Nathan Bossart <nathandbossart@gmail.com>
From: Nathan Bossart <nathandbossart@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Melanie Plageman <melanieplageman@gmail.com>, pgsql-hackers@postgresql.org
Date: 2023-03-07T00:59:49Z
Lists: pgsql-hackers
On Tue, Mar 07, 2023 at 09:20:12AM +0900, Michael Paquier wrote: > - * Do the actual work --- either FULL or "lazy" vacuum > + * If PROCESS_MAIN is set (the default), it's time to vacuum the main > + * relation. Otherwise, we can skip this part. If required, we'll process > + * the TOAST table later. > > Should we mention that this part could be used for a toast table once > we've already looped once through vacuum_rel() when toast_relid was > set? VACOPT_PROCESS_MAIN is enforced a few lines down the road, > still.. That did cross my mind, but I was worried that trying to explain all that here could cause confusion. If PROCESS_MAIN is set (the default), it's time to vacuum the main relation. Otherwise, we can skip this part. If processing the TOAST table is required (e.g., PROCESS_TOAST is set), we'll force PROCESS_MAIN to be set when we recurse to the TOAST table so that it gets processed here. How does that sound? -- Nathan Bossart Amazon Web Services: https://aws.amazon.com
Commits
-
Improve readability of code PROCESS_MAIN in vacuum_rel()
- ee56048b0ecf 16.0 landed
-
Add PROCESS_MAIN to VACUUM
- 4211fbd8413b 16.0 landed
-
Improve the regression tests of VACUUM (PROCESS_TOAST)
- 46d490ac19a7 16.0 landed
-
Display the leader apply worker's PID for parallel apply workers.
- d540a02a724b 16.0 cited