From: | Wes Palmer <wespvp(at)syntegra(dot)com> |
---|---|
To: | Postgres General <pgsql-general(at)postgresql(dot)org> |
Subject: | DB failure? |
Date: | 2004-08-31 04:07:08 |
Message-ID: | BD59639C.10874%wespvp@syntegra.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
PostgreSQL: 7.4.1
Last week, I had a corrupt index on one table with 2 million rows. On a
specific search, the database would SEGV. I dropped and recreated the index
involved in the search, and did a REINDEX on the primary key. That problem
went away.
Now I'm seeing:
db=> select count(*) from messages;
ERROR: could not access status of transaction 859000513
DETAIL: could not open file "/db/pgsql/data/pg_clog/0333": No such file or
directory
db=> select count(*) from message_recipients;
ERROR: invalid page header in block 1238604 of relation
"message_recipients"
The above commands were successful on 8/21.
There are 240 million rows. Dump/reload is not something that would be an
attractive option. Based on previous timings, it could take 2-3 days (this
is with a dual hyper-threaded 2.4 Ghz with 2GB memory and an 8 drive RAID 5)
on a production system.
So far, this database has been all INSERTs - no deletes or updates.
Is there a way to recover this without a dump/reload? We do nightly
backups, but since we don't know when the problem really started, it would
be rather difficult to restore and reapply several million updates.
Wes
From | Date | Subject | |
---|---|---|---|
Next Message | Wes | 2004-08-31 05:24:53 | Re: DB failure? |
Previous Message | Tim Perkins | 2004-08-31 02:36:21 | psqlodbc-07.03.0200 --with-iodbc won7t compile on Mac OS X |