Re: missing pg_clog files ? - Mailing list pgsql-hackers

From Tom Lane
Subject Re: missing pg_clog files ?
Date
Msg-id 28276.1064242222@sss.pgh.pa.us
Whole thread Raw
In response to missing pg_clog files ?  (Patrick Welche <prlw1@newn.cam.ac.uk>)
Responses Re: missing pg_clog files ?  (Patrick Welche <prlw1@newn.cam.ac.uk>)
List pgsql-hackers
Patrick Welche <prlw1@newn.cam.ac.uk> writes:
>   select * from olddata02_03vac offset 2573719 limit 1;
> ERROR:  could not access status of transaction 1664158221
> DETAIL:  open of file "/usr/local/pgsql/data/pg_clog/0633" failed: No such file or directory

> # ls -l pg_clog
> total 32
> -rw-------  1 postgres  postgres  16384 Sep 22 13:12 0000

What you have here is a corrupted tuple (viz, a silly transaction number).

It would be useful to look at the page containing the tuple to see if
any pattern can be detected in the corruption.  To do this, get the
ctid of the prior tuple:select ctid from olddata02_03vac offset 2573718 limit 1;
This will give you a result "(blocknumber,tuplenumber)".  The bogus
tuple is probably on the same page, though possibly further along.
Next find a dump tool --- I usually use Red Hat's pg_filedump:http://sources.redhat.com/rhdb/tools.html
Dump out the page(s) in question and send them along.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Eric Ridge
Date:
Subject: Re: [GENERAL] Can't Build 7.3.4 on OS X
Next
From: Patrick Welche
Date:
Subject: Re: missing pg_clog files ?