Thread: Seamless Logical Replication during Fail-over

Seamless Logical Replication during Fail-over

From
Moor Ali
Date:
Hi,

Is there any way to continue logical replication (either in-built or using pglogical) between a promoted replica and existing subscribers without data loss?

I could find some discussions about fail-over slots and other mechanisms for addressing this as part of PostgreSQL 9.6 release. But I am not sure if these changes made it to any of the releases. 

The use-case is as follows:
* Cluster A with a master and two or more replicas using synchronized streaming replication
* Cluster B containing a node which uses logical replication with Cluster A master. There may be a lag in updating this node.
* When Cluster A master goes down, a replica is promoted but it does not have any information about the logical replication slots created in the master. So, even if a new slot is created on the replica, there will be data loss on the subscriber side.

Any suggestions on how to address this using builtin mechanisms or using an extension are welcome.

Thanks,
Murali

Re: Seamless Logical Replication during Fail-over

From
Peter Eisentraut
Date:
On 2020-05-15 12:05, Moor Ali wrote:
> Is there any way to continue logical replication (either in-built or 
> using pglogical) between a promoted replica and existing subscribers 
> without data loss?
> 
> I could find some discussions about fail-over slots and other mechanisms 
> for addressing this as part of PostgreSQL 9.6 release. But I am not sure 
> if these changes made it to any of the releases.

You are right that the fail-over slot mechanism was supposed to address 
this but it never made it into a release.  I'm not aware of an 
open-source solution for this right now.

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services