On Fri, Jan 29, 2010 at 11:49 PM, Mason Hale <ma...@onespot.com> wrote: > While I did not remove the trigger file, I did rename recovery.conf to > recovery.conf.old. > That file contained the recovery_command configuration that identified the > trigger file. So that rename should have eliminated the problem. But it > didn't. Even after making this change and taking the trigger file out of the > equation my database failed to come online.
Renaming of the recovery.conf doesn't resolve the problem at all. Instead, the sysadmin had to remove only the trigger file with a wrong permission and just restart postgres. >> 9.) The server did not come up (again). This time the contents of the >> new postgresql.log file were: >> >> [postg...@prod-db-2 pg_log]$ tail -n 100 postgresql-2010-01-18_211132.log >> 2010-01-18 21:11:32 UTC ()LOG: database system was interrupted while in >> recovery at log time 2010-01-18 20:10:59 UTC >> 2010-01-18 21:11:32 UTC ()HINT: If this has occurred more than once some >> data might be corrupted and you might need to choose an earlier recovery >> target. >> 2010-01-18 21:11:32 UTC ()LOG: could not open file >> "pg_xlog/0000000200003C82000000A3" (log file 15490, segment 163): No such >> file or directory >> 2010-01-18 21:11:32 UTC ()LOG: invalid primary checkpoint record >> 2010-01-18 21:11:32 UTC ()LOG: could not open file >> "pg_xlog/0000000200003C8200000049" (log file 15490, segment 73): No such >> file or directory >> 2010-01-18 21:11:32 UTC ()LOG: invalid secondary checkpoint record >> 2010-01-18 21:11:32 UTC ()PANIC: could not locate a valid checkpoint record >> 2010-01-18 21:11:32 UTC ()LOG: startup process (PID 9328) was terminated by >> signal 6: Aborted >> 2010-01-18 21:11:32 UTC ()LOG: aborting startup due to startup process >> failure You seem to focus on the above trouble. I think that this happened because recovery.conf was deleted and restore_command was not given. In fact, the WAL file (e.g., pg_xlog/0000000200003C82000000A3) required for recovery was unable to be restored from the archive because restore_command was not supplied. Then recovery failed. If the sysadmin had left the recovery.conf and removed the trigger file, pg_standby in restore_command would have restored all WAL files required for recovery, and recovery would advance well. Hope this helps. Regards, -- Fujii Masao NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs