Re: [doc patch] a slight VACUUM / VACUUM FULL doc improvement proposal - Mailing list pgsql-performance

From Jim C. Nasby
Subject Re: [doc patch] a slight VACUUM / VACUUM FULL doc improvement proposal
Date
Msg-id 20070516154809.GL14548@nasby.net
Whole thread Raw
In response to Re: [doc patch] a slight VACUUM / VACUUM FULL doc improvement proposal  (Guillaume Cottenceau <gc@mnc.ch>)
Responses Re: [doc patch] a slight VACUUM / VACUUM FULL doc improvement proposal  (Guillaume Cottenceau <gc@mnc.ch>)
List pgsql-performance
On Wed, May 16, 2007 at 09:41:46AM +0200, Guillaume Cottenceau wrote:
> Michael Stone <mstone+postgres 'at' mathom.us> writes:
>
> > On Tue, May 15, 2007 at 06:43:50PM +0200, Guillaume Cottenceau wrote:
> > >patch - basically, I think the documentation under estimates (or
> > >sometimes misses) the benefit of VACUUM FULL for scans, and the
> > >needs of VACUUM FULL if the routine VACUUM hasn't been done
> > >properly since the database was put in production.
> >
> > It's also possible to overestimate the benefit of vacuum full, leading
> > to people vacuum full'ing almost constantly, then complaining about
> > performance due to the associated overhead. I think there have been
> > more people on this list whose performance problems were caused by
> > unnecessary full vacs than by those whose performance problems were
> > caused by insufficient full vacs.
>
> Come on, I don't suggest to remove several bold warnings about
> it, the best one being "Therefore, frequently using VACUUM FULL
> can have an extremely negative effect on the performance of
> concurrent database queries." My point is to add the few
> additional mentions; I don't think the claims that VACUUM FULL
> physically compacts the data, and might be useful in case of too
> long time with infrequent VACUUM are incorrect, are they?

Unfortunately they are, to a degree. VACUUM FULL can create a
substantial amount of churn in the indexes, resulting in bloated
indexes. So often you have to REINDEX after you VACUUM FULL.

Long term I think we should ditch 'VACUUM FULL' altogether and create a
COMPACT command (it's very easy for users to get confused between
"vacuum all the databases in the cluster" or "vacuum the entire
database" and "VACUUM FULL").
--
Jim Nasby                                      decibel@decibel.org
EnterpriseDB      http://enterprisedb.com      512.569.9461 (cell)

pgsql-performance by date:

Previous
From: "Luke Lonergan"
Date:
Subject: Re: New performance documentation released
Next
From: "Jim C. Nasby"
Date:
Subject: Re: Disk Fills Up and fsck "Compresses" it