On Tue, 2006-11-07 at 17:20 -0500, Tom Lane wrote:
> Jeff Davis <pgsql@j-davis.com> writes:
> > LOG: restored log file "00000001000000170000002B" from archive
> > LOG: record with zero length at 17/2B6EACC8
> > LOG: redo done at 17/2B6EAC84
>
> It looks to me like you archived this log file before it was fully
> written. You should take a close look at your archiving procedures.
Ok, I found the problem. Completely my mistake, because I was running
through the test without being careful.
On the first recovery attempt, I left the postmaster.conf, including the
archive_command setting, in the data dir along with some archives in
pg_xlog. When I started recovery, it overwrote some of my archived
segments.
The archive script isn't supposed to overwrite existing files, but I had
a typo in the check and didn't realize it because in the normal case
everything was archiving correctly.
Would it make sense to throw an error if there's a recovery.conf and
files already exist in pg_xlog?
Thanks for narrowing down the problem for me.
Regards,
Jeff Davis