The default restore_command generated by the restore action does not work when archiving is done over SSH.
restore_xlog fails to find the SSH user and host from the configuration file, when it is not provided on the command line. As of 1.9, the restore action no longer generates a
restore_xlog command line including
This make the restore fail when PostgreSQL starts.
The workaround is to set
RESTORE_COMMAND in the configuration file to:
RESTORE_COMMAND="/path/to/restore_xlog -C <config_file> -h <archive_host> %f %p"
If a different SSH user is required, add
RESTORE_COMMAND="/path/to/restore_xlog -C <config_file> -h <archive_host> -u <archive_user> %f %p"
This issue is old, but it is only when the behaviour of the restore action on generating the value of
restore_command has been changed in version 1.9 that it shows.
The next version of pitrery, 1.10 will include a fix for this bug. In the mean time, see issue 6 on github.