Re: AutoVacuum Behaviour Question - Mailing list pgsql-general

From Alvaro Herrera
Subject Re: AutoVacuum Behaviour Question
Date
Msg-id 20070628140040.GB5300@alvh.no-ip.org
Whole thread Raw
In response to Re: AutoVacuum Behaviour Question  (Bruce McAlister <bruce.mcalister@blueface.ie>)
Responses Re: AutoVacuum Behaviour Question
Re: AutoVacuum Behaviour Question
List pgsql-general
Bruce McAlister wrote:
> Martijn van Oosterhout wrote:
> > All the values here look OK, except one:
> >
> > On Thu, Jun 28, 2007 at 07:50:36AM +0100, Bruce McAlister wrote:
> >> blueface-crm=# select oid, relfrozenxid from pg_class where relkind in
> >> ('r', 't');
> >>    oid   | relfrozenxid
> >> ---------+--------------
> >>  2570051 |   2947120794
> >
> > Whatever this table is, the freeze XID isn't getting updated for some
> > reason...

Doh.

> This looks like a temporary relation,
>
> temp4295                   |   2947120794
>
> Is there a way we can manually force these to update?

No.  Only the session that created the temp table can vacuum it.
Autovacuum skips temp tables.  I guess the only thing you can do here is
close that session.

I'm thinking that maybe should make vac_update_datfrozenxid ignore temp
tables.  But this doesn't really work, because if we were to truncate
pg_clog there would be tuples on the temp table marked with XIDs that
are nowhere to be found.  Maybe we could make some noise about it
though.

This is a problem only in recent releases (8.2) because we started
allowing the max freeze age be configurable.

--
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

pgsql-general by date:

Previous
From: Masaru Sugawara
Date:
Subject: Re: Possible bug (or I don't understand how foreign keys should work with partitions)
Next
From: Alvaro Herrera
Date:
Subject: Re: Execution variability