Re: add PROCESS_MAIN to VACUUM

Melanie Plageman <melanieplageman@gmail.com>

From: Melanie Plageman <melanieplageman@gmail.com>
To: Nathan Bossart <nathandbossart@gmail.com>
Cc: Michael Paquier <michael@paquier.xyz>, vignesh C <vignesh21@gmail.com>, pgsql-hackers@postgresql.org
Date: 2023-03-06T20:48:28Z
Lists: pgsql-hackers
On Mon, Mar 6, 2023 at 3:27 PM Nathan Bossart <nathandbossart@gmail.com> wrote:
>
> 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?

I think that would be clearer.

- Melanie



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.