Re: Re: reloption to prevent VACUUM from truncating empty pages at the end of relation

From: Julien Rouhaud <rjuju123(at)gmail(dot)com>
To: Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>
Cc: "Tsunakawa, Takayuki" <tsunakawa(dot)takay(at)jp(dot)fujitsu(dot)com>, Fujii Masao <masao(dot)fujii(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, David Steele <david(at)pgmasters(dot)net>, Andres Freund <andres(at)anarazel(dot)de>, "Bossart, Nathan" <bossartn(at)amazon(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Andrew Dunstan <andrew(dot)dunstan(at)2ndquadrant(dot)com>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Michael Paquier <michael(at)paquier(dot)xyz>, Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>, "Jamison, Kirk" <k(dot)jamison(at)jp(dot)fujitsu(dot)com>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Re: reloption to prevent VACUUM from truncating empty pages at the end of relation
Date: 2019-04-04 13:06:47
Message-ID: CAOBaU_ZYOzQtYRTUhQGCt6+8bng2GAepCYCcYapgj=-F+SFT7Q@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Apr 4, 2019 at 1:23 PM Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> wrote:
>
> On Thu, Apr 4, 2019 at 1:26 PM Tsunakawa, Takayuki
> <tsunakawa(dot)takay(at)jp(dot)fujitsu(dot)com> wrote:
> >
> > From: Fujii Masao [mailto:masao(dot)fujii(at)gmail(dot)com]
> > > reloption for TOAST is also required?
> >
> > # I've come back to the office earlier than planned...
> >
> > Hm, there's no reason to not provide toast.vacuum_shrink_enabled. Done with the attached patch.
> >
>
> Thank you for updating the patch!

+1!

> + <term><literal>vacuum_shrink_enabled</literal>,
> <literal>toast.vacuum_shrink_enabled</literal>
> (<type>boolean</type>)</term>
> + <listitem>
> + <para>
> + Enables or disables shrinking the table when it's vacuumed.
> + This also applies to autovacuum.
> + The default is true. If true, VACUUM frees empty pages at the
> end of the table.
>
> "VACUUM" needs <command> or "vacuum" is more appropriate here?

also, the documentation should point out that freeing is not
guaranteed. Something like

+ The default is true. If true, VACUUM will try to free empty
pages at the end of the table.

> I'm not sure the consensus we got here but we don't make the vacuum
> command option for this?

I don't think here's a clear consensus, but my personal vote is to add
it, with SHRINK_TABLE = [ force_on | force_off | default ] (unless a
better proposal has been made already)

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David Rowley 2019-04-04 13:22:42 Re: Inadequate executor locking of indexes
Previous Message Alvaro Herrera 2019-04-04 13:02:58 Re: Refactoring the checkpointer's fsync request queue