Re: why there is not VACUUM FULL CONCURRENTLY? - Mailing list pgsql-hackers

From Antonin Houska
Subject Re: why there is not VACUUM FULL CONCURRENTLY?
Date
Msg-id 97795.1744363522@localhost
Whole thread Raw
In response to Re: why there is not VACUUM FULL CONCURRENTLY?  ("Euler Taveira" <euler@eulerto.com>)
List pgsql-hackers
Euler Taveira <euler@eulerto.com> wrote:

> On Fri, Apr 4, 2025, at 1:38 PM, Antonin Houska wrote:
> 
>  Euler Taveira <euler@eulerto.com> wrote:
> 
>  > +
>  > +     <warning>
>  > +      <para>
>  > +       The <command>FULL</command> parameter is deprecated in favor of
>  > +       <xref linkend="sql-repack"/>.
>  > +      </para>
>  > +     </warning>
>  > +
>  > 
>  > The warnings, notes, and tips are usually placed *after* the description.
> 
>  You probably mean the subsecions "Notes on Clustering" and "Notes on
>  Resources". I moved them into the "Notes" section.
> 
> No. I said that it should be put after the <para> not before.
> 
> @@ -98,6 +98,14 @@ VACUUM [ ( <replaceable class="parameter">option</replaceable> [, ...] ) ] [ <re
>     <varlistentry>
>      <term><literal>FULL</literal></term>
>      <listitem>
> +
> +     <warning>
> +      <para>
> +       The <command>FULL</command> parameter is deprecated in favor of
> +       <xref linkend="sql-repack"/>.
> +      </para>
> +     </warning>
> +
>       <para>
>        Selects <quote>full</quote> vacuum, which can reclaim more 
>        space, but takes much longer and exclusively locks the table.
> 
>  > +    SELECT
>  > +        S.pid AS pid,
>  > +        S.datid AS datid,
>  > +        D.datname AS datname,
>  > +        S.relid AS relid,
>  > +        CASE S.param1 WHEN 1 THEN 'REPACK'
>  > +                      END AS command,
>  > 
>  > Do you really need command? IIUC REPACK is the only command that will used by
>  > this view. There is no need to differentiate commands here.
> 
>  REPACK is a regular command, so why shouldn't it have its view? Just like
>  CLUSTER has one (pg_stat_progress_cluster).
> 
> You missed my point. IIRC the command is relevant in the
> pg_stat_progress_cluster because there are multiple commands (CLUSTER, VACUUM
> FULL). However, in this new view there will be only one command so it is not
> necessary to inform it.
> 
>  > + *
>  > + * 'cmd' indicates which commands is being executed. REPACK should be the only
>  > + * caller of this function in the future.
>  > 
>  > command.
> 
>  Not sure I understand this comment.
> 
> Singular form. ... which command is ...
> 

This is the next version. It addresses these remaining concerns and also gets
rid of the unnecessary rules in gram.y (which complained about earlier).

-- 
Antonin Houska
Web: https://www.cybertec-postgresql.com


Attachment

pgsql-hackers by date:

Previous
From: Nazir Bilal Yavuz
Date:
Subject: Add pg_buffercache_mark_dirty[_all] functions to the pg_buffercache
Next
From: Dave Cramer
Date:
Subject: Re: Correct documentation for protocol version