Alvaro Herrera <alvherre@commandprompt.com> writes:
> Manuel Sugawara wrote:
>> Alvaro Herrera <alvherre@commandprompt.com> writes:
>>
>> > Hmm, nope -- take away the relnamespace check, because there is a
>> > different namespace for each backend (pg_temp_2, pg_temp_3, etc).
>>
>> Still no luck, changed the query to:
>>
>> select relname, age(relfrozenxid) from pg_class join pg_namespace n on (n.oid = relnamespace) where nspname ~
'^pg_temp'
>>
>> and no temp tables showed in any database :-(. Any other idea?.
>
> None :-( Is there any table with a large age value, regardless of
> temp-ness? Does the age of the oldest table correspond to the age of
> pg_database.datfrozenxid? The interesting database is the one with the
> largest age(pg_database.datfrozenxid).
A friend is doing the queries right now but it takes time :-(, mean
time I was wondering if it will be safe to apply the following patch
just to get the database up and be able to run pg_dumpall:
*** postgresql-8.2.6/src/backend/access/transam/varsup.c~ 2006-11-05 16:42:07.000000000 -0600
--- postgresql-8.2.6/src/backend/access/transam/varsup.c 2008-04-08 18:34:51.000000000 -0500
***************
*** 225,231 ****
* vacuuming requires one transaction per table cleaned, we had better be
* sure there's lots of XIDs left...)
*/
! xidStopLimit = xidWrapLimit - 1000000;
if (xidStopLimit < FirstNormalTransactionId)
xidStopLimit -= FirstNormalTransactionId;
--- 225,231 ----
* vacuuming requires one transaction per table cleaned, we had better be
* sure there's lots of XIDs left...)
*/
! xidStopLimit = xidWrapLimit - 500000;
if (xidStopLimit < FirstNormalTransactionId)
xidStopLimit -= FirstNormalTransactionId;
Regards,
Manuel.