Re: add PROCESS_MAIN to VACUUM

Nathan Bossart <nathandbossart@gmail.com>

From: Nathan Bossart <nathandbossart@gmail.com>
To: Michael Paquier <michael@paquier.xyz>, vignesh C <vignesh21@gmail.com>, pgsql-hackers@postgresql.org
Date: 2023-03-06T20:27:34Z
Lists: pgsql-hackers
On Mon, Mar 06, 2023 at 02:40:09PM -0500, Melanie Plageman wrote:
> I noticed in vacuum_rel() in vacuum.c where table_relation_vacuum() is
> called, 4211fbd84 changes the else into an else if [1]. I understand
> after reading the commit and re-reading the code why that is now, but I
> was initially confused. I was thinking it might be nice to have a
> comment mentioning why there is no else case here (i.e. that the main
> table relation will be vacuumed on the else if branch).

This was a hack to avoid another level of indentation for that whole block
of code, but based on your comment, it might be better to just surround
this entire section with an "if (params->options & VACOPT_PROCESS_MAIN)"
check.  WDYT?

-- 
Nathan Bossart
Amazon Web Services: https://aws.amazon.com



Commits

  1. Improve readability of code PROCESS_MAIN in vacuum_rel()

  2. Add PROCESS_MAIN to VACUUM

  3. Improve the regression tests of VACUUM (PROCESS_TOAST)

  4. Display the leader apply worker's PID for parallel apply workers.