Robert,
> Actually if you are vacuuming frequently enough, it can (and should*)
> obviate a vacuum full. Be aware that frequently enough might mean really
> frequent, for instance I have several tables in my database that update
> every row within a 15 minute timeframe, so I run a "lazy" vacuum on
> these tables every 10 minutes. This allows postgresql to reuse the space
> for these tables almost continuously so I never have to vacuum full
> them.
This would assume absolutely perfect FSM settings, and that the DB never gets
thrown off by unexpected loads. I have never been so fortunate as to work
with such a database. However, I agree that good FSM tuning and frequent
regular VACUUMs can greatly extend the period required for running FULL.
I have not found, though, that this does anything to prevent the need for
REINDEX on frequently-updated tables. How about you, Robert?
--
Josh Berkus
Aglio Database Solutions
San Francisco