Re: vacuuming not working? - Mailing list pgsql-general

From Tom Lane
Subject Re: vacuuming not working?
Date
Msg-id 22955.1018294703@sss.pgh.pa.us
Whole thread Raw
In response to Re: vacuuming not working?  ("David Esposito" <dvesposito@newnetco.com>)
Responses Re: vacuuming not working?
List pgsql-general
"David Esposito" <dvesposito@newnetco.com> writes:
> That's why I isolated it down to a standalone example ... There is no other
> process looking at that table ... no foreign keys or other things that could
> cause those records to be "in use" ...

Whether there *is* something looking at that table is not the issue.
The issue is whether there is an open transaction old enough that if
it chose to look at the table, it would see now-deleted rows.  If so,
VACUUM can't remove those rows, since it doesn't have any way to know
whether the old transaction will later choose to look.

Given your later message, I suspect there was such an open transaction
and it exited.  There is not any really good way to look for this
situation, although the pg_stat_activity view (in 7.2) is better than
nothing.  Perhaps in future releases, we should add columns to
pg_stat_activity that would indicate how old each backend's open
transaction is.

            regards, tom lane

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: Do I just not understand count()?
Next
From: "S Dawalt"
Date:
Subject: Re: PHP, HTML Forms & PostgreSQL