Re: backup_label and server start - Mailing list pgsql-hackers

From Albe Laurenz
Subject Re: backup_label and server start
Date
Msg-id D960CB61B694CF459DCFB4B0128514C293D051@exadv11.host.magwien.gv.at
Whole thread Raw
In response to Re: backup_label and server start  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: backup_label and server start  (Simon Riggs <simon@2ndquadrant.com>)
Re: backup_label and server start  (Bruce Momjian <bruce@momjian.us>)
Re: backup_label and server start  (Bruce Momjian <bruce@momjian.us>)
List pgsql-hackers
>> If the postmaster is stopped with 'pg_ctl stop' while an
>> online backup is in progress, the 'backup_label' file will remain
>> in the data directory.
[...]
>> the startup process will fail with a message like this:
[...]
>> PANIC:  could not locate required checkpoint record
>> HINT:  If you are not restoring from a backup, try removing the file "/POSTGRES/data/PG820/backup_label".
>>
>> wouldn't it be a good thing
>> for the startup process to ignore (and rename) the backup_label
>> file if no recovery.conf is present?

Tom Lane replied:
> No, it certainly wouldn't.

Point taken. When backup_label is present and recovery.conf isn't,
there is the risk that the data directory has been restored from
an online backup, in which case using the latest available
checkpoint would be detrimental.

> I don't see why we should simplify the bizarre case you're
> talking about

Well, it's not a bizarre case, it has happened twice here.

If somebody stops the postmaster while an online backup is
in progress, there is no warning or nothing. Only the server
will fail to restart.

One of our databases is running in a RedHat cluster, which
in this case cannot failover to another node.
And this can also happen during an online backup.

Simon Riggs replied:
> The hint is telling you how to restart the original server, not a crafty
> way of cheating the process to allow you to use it for backup.
>
> What are you trying to do?

You misunderstood me, I'm not trying to cheat anything, nor do
I want to restore a backup that way.

All I want to do is restart a server after a clean shutdown.

How about my second suggestion:

Remove backup_label when the server shuts down cleanly.
In that case an online backup in progress will not be useful
anyway, and there is no need to recover on server restart.

What do you think?

Yours,
Laurenz Albe


pgsql-hackers by date:

Previous
From: Andrei Kovalevski
Date:
Subject: Re: PREPARE vs query with MULTIPLE statements
Next
From: "B. Maust"
Date:
Subject: plperl failure on OS X 10.5(.1)