0

I would like to be able to setup a master-master replication between more than two postgresql databases in the following way:

Consider three databases namely db_main, db_1, db_2. There is a bi-directional replication setup (swap sync maybe?, in Bucardo terms) between db_main and db1 and another between db_main and db_2. While db_1 and db_2 are not even directly connected, if I create table1 on db_1 and table2 on db_2 then both table1 and table2 should propagate to all three databases.

Is such a setup even possible? if yes how? what level of consistency? will the solution tolerate failures such as message loss due to network failure ?

Thank you in advance.

Zaki
  • 55
  • 1
  • 6
  • 1
    Offtopic. This is server/DB configuration, not programming. Try the DBA site. – Marc B Nov 25 '15 at 21:28
  • Isn't is too soon to decide whether this is a programming problem? If no current tools/ technologies offer a solution to this (which is likely the case) then this is an open distributed replication problem right? – Zaki Nov 25 '15 at 21:37
  • You can use BDR: http://2ndquadrant.com/en/resources/bdr/ it supports up 48 master nodes Other options are SymmetricDS: http://www.symmetricds.org/ or HA-JDBC: https://ha-jdbc.github.io/ –  Nov 25 '15 at 21:41
  • BDR requires connections between all nodes in a mesh. pglogical - the base of the successor/upgrade to BDR - won't, but it won't be ready for multimaster end-user use for a long time yet. – Craig Ringer Nov 26 '15 at 03:06

0 Answers0