Re: pg_basebackup recovery failure

From: Ray Stell <stellr(at)vt(dot)edu>
To: Magnus Hagander <magnus(at)hagander(dot)net>
Cc: "pgsql-admin(at)postgresql(dot)org" <pgsql-admin(at)postgresql(dot)org>
Subject: Re: pg_basebackup recovery failure
Date: 2017-03-08 17:43:28
Message-ID: a6cf7e38-e69d-56cb-057a-ae009ee08723@vt.edu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

On 3/7/17 3:36 PM, Magnus Hagander wrote:

> On Tue, Mar 7, 2017 at 12:31 PM, Ray Stell <stellr(at)vt(dot)edu
> <mailto:stellr(at)vt(dot)edu>> wrote:
>
> On this doc page are some command examples for pg_basebackup:
>
> https://www.postgresql.org/docs/current/static/app-pgbasebackup.html
> <https://www.postgresql.org/docs/current/static/app-pgbasebackup.html>
>
> such as:
>
> pg_basebackup -h mydbserver -D /usr/local/pgsql/data
>
> I've never gotten this to work. When I bring up the copy on an
> intended standby system I always get the classic:
> PANIC: could not locate a valid checkpoint record
>
> Failing that, I backed up with pg_start_backup/tar/pg_stop_backup as an alternative, but I was always curious what I was doing wrong.
> The wiki page on setting up replication:
>
> https://wiki.postgresql.org/wiki/Streaming_Replication
> <https://wiki.postgresql.org/wiki/Streaming_Replication>
>
> says use the command with this options:
>
> pg_basebackup -h 192.168.0.10 -D /srv/pgsql/standby -P -U replication --xlog-method=stream
>
> and I stumbled into option:
>
> --checkpoint=fast
>
> The standby was able to recover when I used one of these, I don't remember which, maybe both.
>
> Should the doc be updated or am I missing something?
>
>
> If you are using pg_basebackup without a log archive, then yes, you
> need --xlog-method=stream (or fetch). The checkpoint method only
> affects how quickly the checkpoint runs, it will always run.
> If you do have a log archive, it should work fine without
> --xlog=stream, but you need to put your restore_command into
> recovery.conf manually.
Too funny not to post. Years ago, maybe version 7 or 8 something, I
remember needing to rm the backup_label from the restored/standby dir.
I did that without thinking and it seems that was the source of the
problem. I just repeated the process with a mv of the backup_label and
I get a: PANIC: XX000: could not locate a valid checkpoint record I
restored the backup_label file and we're happy: LOG: 00000: started
streaming WAL from primary at 0/15000000 on timeline 1 Lesson: I need to
get out more often, but I must say, the error msg gave me a pretty good
head fake.

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Aldo Sarmiento 2017-03-08 19:48:48 pg_backrest no longer backing up
Previous Message Jorge Torralba 2017-03-07 22:11:33 Re: pg_basebackup recovery failure