Replication stops, standby repeats "End of WAL reached on timeline 2

Craig Ringer
Craig Ringer

Replication on a streaming physical replication has stopped and the standby's logs repeat a message like:

LOG: replication terminated by primary server DETAIL: End of WAL reached on timeline 2 at 24/CAA66EE8

This probably node is or was a cascading standby leaf node where a standby "above" it in the chain has been promoted. By default a standby will not follow a timeline increment of the upstream node, it will instead pause redo at the timeline switch point.


PostgreSQL 9.5 and above supports streaming replicas following timeline switches in cascading standbys, but does not enable it by default.

To get it to continue, edit recovery.conf on the standby and append

recovery_target_timeline = 'latest'

Then restart the replica.

This should usually be set at cascading replica startup time.


You'll need WAL archiving and a restore_command enabled, or to manually copy timeline history files (pg_xlog/*.history) to the replica then restart it.

Was this article helpful?

0 out of 0 found this helpful