Re: Serious problem: media recovery fails after system or PostgreSQL crash

From: "Kevin Grittner" <kgrittn(at)mail(dot)com>
To: "MauMau" <maumau307(at)gmail(dot)com>,pgsql-hackers(at)postgresql(dot)org
Subject: Re: Serious problem: media recovery fails after system or PostgreSQL crash
Date: 2012-12-06 16:52:46
Message-ID: 20121206165246.142840@gmx.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

MauMau wrote:

> [Problem]
> I'm using PostgreSQL 9.1.6 on Linux. I encountered a serious
> problem that media recovery failed showing the following message:
>
> FATAL: archive file "000000010000008000000028" has wrong size:
> 7340032 instead of 16777216
>
> I'm using normal cp command to archive WAL files. That is:
>
>  archive_command = '/path/to/my_script.sh "%p"
"/backup/archive_log/%f"'
>
> <<my_script.sh>>
> --------------------------------------------------
> #!/bin/sh
> some processing...
> cp "$1" "$2"
> other processing...
> --------------------------------------------------
>
>
> The media recovery was triggered by power failure. The disk drive
> that stored $PGDATA failed after a power failure. So I replaced
> the failed disk, and performed media recovery by creating
> recovery.conf and running pg_ctl start. However, pg_ctl failed
> with the above error message.

If you are attempting a PITR-style recovery and you want to include
WAL entries from the partially-copied file, pad a copy of it with
NUL bytes to the expected length.

-Kevin

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Stephen Frost 2012-12-06 16:55:39 Re: Commits 8de72b and 5457a1 (COPY FREEZE)
Previous Message Simon Riggs 2012-12-06 16:43:45 Re: Functional dependency in GROUP BY through JOINs