Hi,
We are evaluating BDR for a multi-master cross-datacenter replication, with 2 masters actually communicating across datacenter, supplemented by a local in-datacenter replicas to provide HA.
Basically, something like
M <——> M
| |
S S
I could run all nodes as multi-masters, but I don’t want many-to-many cross-datacenter communications, primary because of the latency issues, and also to avoid locking too many nodes on DDL changes.
As far as I see, I cannot make a promoted physical replica a member of the multi-master group without re-joining the group after promotion (which leads to re-transfering the whole database over the network from the surviving master), see
https://github.com/2ndQuadrant/bdr/issues/98, so running multi-master with physical datacenter-local replicas is tough, but is there a better alternative at the moment, i.e:
- BDR multi-master being part of more than one replication group (I could create one group for cross-DS multi-masters, and another for DS-local communications)?
- BDR multi-master being also master with several UDR replicas attached (so that DS-local nodes will be running as UDR replicas of a master, that at the same time communicates via BDR to another master in another DS), and allowing the UDR replica to join the BDR group if the master dies.