a postgres novice here, so sorry if my questions don't sound meaningful. My postgres server setup goes as follows:

Master(on server A), Upstream(on B, receiving wal from A), Downstream(on C, receiving wal from B). A is streaming wal logs on a few physical_replication_slots. All the other servers are created from pg_basebackup of A.

Now, I've another server X, dedicated to WAL storage. Whatever be the primary at the moment, its wal logs will be dumped on X inside directory(say /root/wal_logs). There's a pg_receivewal(on server X) process receiving this wal from Master and saving it in the same directory.

Under failover scenarios, slaves are promoted to master, and others act like slaves. So, I wanted to know,

  • How the logs on server X will be affected if masters keep on switching ? Can a new master server create a wal conflicting with the old server's wal ?
  • What if I create a new standby( D ) from pg_basebackup of A, and try recovering it from these logs ? There was some Timeline kinda concept(which I couldn't grasp much) in postgres wals. Can it have effect on recovery of D ?
  • And is it possible, for a Master demoted to standby, recover from these logs ? Or will I need pg_rewind for this?
  • Otherwise, what's the recommended way to do it ?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.