Yesterday, I was attempting to reload a remote copy of a postgresql database that had been corrupted. Creating the new db went well, as did reloading the data schema, but somewhere during the reload of the data itself, I lost the remote connection. After killing the now-unworking putty connection and opening a new one, I discovered that neither the postgresql system, nor the postmaster it uses, were running. And when I try to restart the postmaster, I get the following page of errors:
LOG: database system was interrupted while in recovery at 2007-07-31 08:54:40 CDT
HINT: This probably means that some data is corrupted and you will have to use the last backup for recovery.
WARNING: autovacuum not started because of misconfiguration
HINT: Enable options "stats_start_collector" and "stats_row_level".
LOG: checkpoint record is at 3C/D7008078
LOG: redo record is at 3C/D7008078; undo record is at 0/0; shutdown FALSE
LOG: next transaction ID: 59170527; next OID: 532878
LOG: next MultiXactId: 1; next MultiXactOffset: 0
LOG: database system was not properly shut down; automatic recovery in progress
LOG: redo starts at 3C/D70080BC
PANIC: block 39 unfound
LOG: startup process (PID 6852) was terminated by signal 6
LOG: aborting startup due to startup process failure
I googled for the panic message and found a small thread on the postgresql hacker's mailing list detailing a similar event, but the thread gave no clues as to how to resolve the issue. Can anyone here think of anything that might help solve this problem?
"No trees were harmed in the production of this post. However, several electrons were severely inconvenienced."
Kumquat.