Re: BUG #4796: Recovery followed by backup creates unrecoverable WAL-file

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: BUG #4796: Recovery followed by backup creates unrecoverable WAL-file
Дата
Msg-id 4A01BA2E.8050505@enterprisedb.com
обсуждение исходный текст
Ответ на BUG #4796: Recovery followed by backup creates unrecoverable WAL-file  ("Mikael Krantz" <mk@zigamorph.se>)
Ответы Re: BUG #4796: Recovery followed by backup creates unrecoverable WAL-file
Список pgsql-bugs
Mikael Krantz wrote:
> If you perform a recovery form a file system level backup postgres will
> switch to a new timeline but the first WAL-log in with the new timeline will
> contain the previous timeline.
>
> If you start a backup immediately after recovery have completed the start of
> the backup will be in this bad WAL file. This makes the backup unrecoverable
> as it will fail with an error similar to:
>
>   LOG:  unexpected timeline ID 54 in log file 4, segment 236, offset 0
>   LOG:  invalid checkpoint record
>   PANIC:  could not locate required checkpoint record
>   HINT:  If you are not restoring from a backup, try removing the file
> "/var/lib/postgresql/8.3/main/backup_label".
>
>
> How to reproduce:
>
>  * restore from backup
>  * SELECT pg_start_backup('label');
>  * take a new backup
>  * SELECT pg_stop_backup();
>  * copy the relevant WAL-files
>  * try to restore the backup

I failed to reproduce this. Is it possible that the history file went
missing in the process? That's needed to recover WAL files from
timelines other than the latest one. You should only get that
"unexpected timeline ID" message if the history file doesn't contain a
line for that timeline ID.

--
   Heikki Linnakangas
   EnterpriseDB   http://www.enterprisedb.com

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Bug (8.4beta): FailedAssertion("!(bms_is_subset(relids, qualscope))", File: "initsplan.c", Line: 915)
Следующее
От: Stefan Kaltenbrunner
Дата:
Сообщение: Re: Bug (8.4beta): FailedAssertion("!(bms_is_subset(relids, qualscope))", File: "initsplan.c", Line: 915)