> >> Are you interested in dumping out the page of pg_index that > >> contains this record, using pg_filedump? > > > Sure, only how do I use pg_filedump? > > Find out the ctid of the busted pg_index record; the first part of it is > the page number. Then > > pg_filedump -i -f -R page_number pg_index_filename >resultfile > > The filename is whatever "select relfilenode from pg_class where relname > = 'pg_index'" tells you, in whatever subdirectory of $PGDATA/base > "select oid from pg_database where datname = 'yourdb'" tells you. mydb=# select ctid from pg_index where indrelid = 16737 and indexrelid = 604251; ctid -------- (1,11) (1 row) mydb=# select relfilenode from pg_class where relname = 'pg_index'; relfilenode ------------- 2610 (1 row) mydb=# select oid from pg_database where datname = 'mydb'; oid ------- 16393 (1 row) postgres@db_server01 ~ $ ./pg_filedump -i -f -R 1 /var/lib/pgsql/data/base/16393/2610 > ./results.log I've attached the results.log to the email. Regards, Richard Broersma Jr.
Attachment:
results.log
Description: 2565429531-results.log