On Thu, Feb 22, 2007 at 12:19:50PM -0800, Barbara Cosentino wrote:
> I have a table that gets many rows inserted, updated and then deleted,
> consistently throughout the day. At any point in time this table should
> have no more than 50 actual rows and many times a direct select against
> this table produces no rows. This table also has a VACUUM FULL ANALYZE
> performed against it about very 30 minutes.
You should not usually need VACUUM FULL; doing so all the time will probably
_decrease_ your performance.
> I noticed the vacuum was taking a considerable amount of time for a table
> with a small number of actual rows. The output of the first vacuum full
> analyze verbose I performed showed that this table had 3,699,704 dead row
> versions that could not be removed. This number of dead rows that could
> not be released increased with each vacuum full that was performed. The
> output of the last vacuum full is shown below.
Do you have any long-running transactions going? Those are likely to make
rows nonremovable. Look for idle workers in a transaction.
/* Steinar */
--
Homepage: http://www.sesse.net/