Re: add PROCESS_MAIN to VACUUM

From: Nathan Bossart <nathandbossart(at)gmail(dot)com>
To: Michael Paquier <michael(at)paquier(dot)xyz>
Cc: vignesh C <vignesh21(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: add PROCESS_MAIN to VACUUM
Date: 2023-03-02 06:53:59
Message-ID: 20230302065359.GA2140777@nathanxps13
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Mar 02, 2023 at 02:53:02PM +0900, Michael Paquier wrote:
> - if (params->options & VACOPT_FULL)
> + if (params->options & VACOPT_FULL &&
> + params->options & VACOPT_PROCESS_MAIN)
> Perhaps this is a bit under-parenthesized, while reading through it
> once again..

fixed

>
> + {
> + /* we force VACOPT_PROCESS_MAIN so vacuum_rel() processes it */
> + bool force_opt = ((params->options & VACOPT_PROCESS_MAIN) == 0);
> +
> + params->options |= VACOPT_PROCESS_MAIN;
> vacuum_rel(toast_relid, NULL, params, true);
> + if (force_opt)
> + params->options &= ~VACOPT_PROCESS_MAIN;
> Zigzagging with the centralized VacuumParams is a bit inelegant.
> Perhaps it would be neater to copy VacuumParams and append
> VACOPT_PROCESS_MAIN on the copy?

done

> An extra question: should we check the behavior of the commands when
> applying a list of relations to VACUUM?

I don't feel a strong need for that, especially now that we aren't
modifying params anymore.

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

Attachment Content-Type Size
v6-0001-add-PROCESS_MAIN-to-VACUUM.patch text/x-diff 17.7 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2023-03-02 07:01:15 Re: pg_dump/pg_restore: Fix stdin/stdout handling of custom format on Win32
Previous Message Amit Kapila 2023-03-02 06:17:43 Re: Should vacuum process config file reload more often