On Sat, Feb 1, 2014 at 7:07 AM, Ying He <yinghe0101@xxxxxxxxx> wrote: > hi, All, > > I intend to do a basebackup on a hot standby node. I followed the > instructions on > http://www.postgresql.org/docs/9.2/static/app-pgbasebackup.html to turn > full_page_writes on at master and other settings on standby. > > When I try to select pg_start_backup('backuplabel'); on the standby > instance, it give me the following: > ERROR: recovery is in progress > HINT: WAL control functions cannot be executed during recovery. > > I tried select pg_xlog_replay_pause(); before the select > pg_start_backup('backuplabel'); but that does not help. > > Also why select pg_is_in_recovery(); always returns true when select > pg_is_xlog_replay_paused(); is true? I thought when I do select > pg_xlog_replay_pause(); the standby should not be in recovery > > Please help if you know anything about this. Thank you. Taking a backup with pg_basebackup and with pg_start/stop_backup are two different things on a standby. In short, you are not allowed to run pg_start/stop_backup in recovery on a standby because pg_stop_backup needs to write a WAL record called XLOG_BACKUP_END once it is done. Only pg_basebackup is able to take backups from a standby because it uses the replication protocol to take the backup and bypasses the WAL record by waiting that all the needed WAL files have been archived. So use pg_basebackup for a standby :) Regards, -- Michael -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general