On Wed, Jun 18, 2008 at 12:29:46PM -0700, Mark Wilden wrote:
> My coworker and I are having an argument about whether it's necessary
> to VACUUM an insert-only table.
>
> My theory is that since there are no outdated nor deleted rows, VACUUM
> doesn't do anything.
Rolled back transactions on an insert-only table can leave behind
dead rows. Also, even if the table never has dead rows you still
have to vacuum periodically to prevent transaction ID wraparound.
http://www.postgresql.org/docs/8.3/interactive/routine-vacuuming.html#VACUUM-FOR-WRAPAROUND
"To avoid this, it is necessary to vacuum every table in every
database at least once every two billion transactions."
--
Michael Fuhr