Thread: Pg_standby and shutting down the warm standby

Pg_standby and shutting down the warm standby

From
"Woody Woodring"
Date:
I am wondering if there is a proper procedure for shutting down the
warm_standby server (8.2.4)?  I am using pg_standby as my restore script in
my testing:

[postgres@jbeam]$ cat recovery.conf
restore_command = 'pg_standby -m -d -s 5 -w 0 -t /tmp/pgsql.trigger.5432
/usr/local2/pg_archive %f %p 2>> standby.log'

My issue is it looks like the when the warm_standby comes back up, it is
looking for a file that has already been loaded (and deleted).  It was
looking for log '*30' when it was shut down, but upon startup again it is
looking for '*2F'.

Thanks,

Woody


Standby.log

Trigger file         : /tmp/pgsql.trigger.5432
Waiting for WAL file : /usr/local2/pg_archive/00000001000000000000002E
WAL file path        : 00000001000000000000002E
Restoring to...      : pg_xlog/RECOVERYXLOG
Sleep interval       : 5 seconds
Max wait interval    : 0 forever
Command for restore  : mv /usr/local2/pg_archive/00000001000000000000002E
pg_xlog/RECOVERYXLOG
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
.
.
.
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
running restore      : success

Trigger file         : /tmp/pgsql.trigger.5432
Waiting for WAL file : /usr/local2/pg_archive/00000001000000000000002F
WAL file path        : 00000001000000000000002F
Restoring to...      : pg_xlog/RECOVERYXLOG
Sleep interval       : 5 seconds
Max wait interval    : 0 forever
Command for restore  : mv /usr/local2/pg_archive/00000001000000000000002F
pg_xlog/RECOVERYXLOG
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
.
.
.
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
running restore      : success

Trigger file         : /tmp/pgsql.trigger.5432
Waiting for WAL file : /usr/local2/pg_archive/000000010000000000000030
WAL file path        : 000000010000000000000030
Restoring to...      : pg_xlog/RECOVERYXLOG
Sleep interval       : 5 seconds
Max wait interval    : 0 forever
Command for restore  : mv /usr/local2/pg_archive/000000010000000000000030
pg_xlog/RECOVERYXLOG
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
.
.
.
WAL file not present yet. Checking for trigger file...
Trigger file         : /tmp/pgsql.trigger.5432
Waiting for WAL file : /usr/local2/pg_archive/00000001.history
WAL file path        : 00000001.history
Restoring to...      : pg_xlog/RECOVERYHISTORY
Sleep interval       : 5 seconds
Max wait interval    : 0 forever
Command for restore  : mv /usr/local2/pg_archive/00000001.history
pg_xlog/RECOVERYHISTORY
running restore      : history file not found

Trigger file         : /tmp/pgsql.trigger.5432
Waiting for WAL file : /usr/local2/pg_archive/00000001000000000000002F
WAL file path        : 00000001000000000000002F
Restoring to...      : pg_xlog/RECOVERYXLOG
Sleep interval       : 5 seconds
Max wait interval    : 0 forever
Command for restore  : mv /usr/local2/pg_archive/00000001000000000000002F
pg_xlog/RECOVERYXLOG
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...
WAL file not present yet. Checking for trigger file...


----------------------------------------
iGLASS Networks
211-A S. Salem St
Apex NC 27502
(919) 387-3550 x813
www.iglass.net


Re: Pg_standby and shutting down the warm standby

From
"Simon Riggs"
Date:
On Mon, 2007-06-18 at 13:26 -0400, Woody Woodring wrote:
> I am wondering if there is a proper procedure for shutting down the
> warm_standby server (8.2.4)?  I am using pg_standby as my restore script in
> my testing:
>
> [postgres@jbeam]$ cat recovery.conf
> restore_command = 'pg_standby -m -d -s 5 -w 0 -t /tmp/pgsql.trigger.5432
> /usr/local2/pg_archive %f %p 2>> standby.log'
>
> My issue is it looks like the when the warm_standby comes back up, it is
> looking for a file that has already been loaded (and deleted).  It was
> looking for log '*30' when it was shut down, but upon startup again it is
> looking for '*2F'.

The -m command is not supported in the most recent version of pg_standby
because it results in the error your point out. The latest version has a
-k option that works around this error and a server patch is in the
queue for 8.3 that will allow a more flexible approach to this.

I'll add a --version option to pg_standby to allow us to discuss which
version is in use, to avoid such issues in future. Thanks,

--
  Simon Riggs
  EnterpriseDB   http://www.enterprisedb.com