Re: How to setup Multi-master replication on postgresql 18 - Mailing list pgsql-admin

From Eduar Flow
Subject Re: How to setup Multi-master replication on postgresql 18
Date
Msg-id CALR9rdSLPbADaydbajsmjsAU7pBFT4c=K7XhRuXoGAJvxh64Bg@mail.gmail.com
Whole thread
In response to RE: How to setup Multi-master replication on postgresql 18  (Jorge Batista <Jorge.Batista@premier-research.com>)
List pgsql-admin
1. Instalar PostgreSQL + BDR
BDR no viene incluido en PostgreSQL estándar.
Necesitas EDB Postgres Distributed (antes BDR)
Sitio: EnterpriseDB
2. Configurar parámetros (postgresql.conf)
Conf
wal_level = logical
max_replication_slots = 10
max_wal_senders = 10
max_worker_processes = 20
shared_preload_libraries = 'bdr'
3. Crear base de datos y habilitar BDR
SQL
CREATE DATABASE mydb;
\c mydb

CREATE EXTENSION bdr;
4. Crear nodo
SQL
SELECT bdr.create_node(
  node_name := 'node1',
  dsn := 'host=IP_NODE1 dbname=mydb user=postgres password=xxx'
);
5. Unir segundo nodo
En el segundo servidor:
SQL
SELECT bdr.join_node(
  node_name := 'node2',
  dsn := 'host=IP_NODE2 dbname=mydb user=postgres password=xxx',
  join_using_dsn := 'host=IP_NODE1 dbname=mydb user=postgres password=xxx'
);
✔️ Ahora ambos pueden escribir (multi-master)

Yekma666

El mar, 7 de abr de 2026, 10:52, Jorge Batista <Jorge.Batista@premier-research.com> escribió:

PostgreSQL logical replication supports bidirectional setups, but conflict handling is not automated. The documentation itself highlights that conflicts can arise when multiple nodes accept writes and resolving them is left to the application or design strategy.

 

If the requirement is strictly open-source and limited to core PostgreSQL, the most direct option would be bi-directional logical replication (native or pglogical).

 

That said, PostgreSQL does not provide a fully managed multi-master solution. In practice, this means:

  • No built-in conflict resolution (conflicts can stop replication)
  • Risk of duplicate keys / concurrent update issues
  • Sequences need coordination (or UUIDs)
  • DDL is not automatically replicated
  • Operational complexity increases significantly

 

Because of this, the safest approach is usually to define data ownership per node (e.g., by tenant or region) to avoid conflicts rather than trying to resolve them after the fact.

 

Otherwise, pure core PostgreSQL multi-master setups can be difficult to operate reliably in production.

 

Regards

 

From: Rajni Baliyan <saan654@gmail.com>
Sent: Tuesday, April 7, 2026 4:16 AM
To: Muhammet Kurtoğlu <muhammet.kurtoglu@bisoft.com.tr>
Cc: akshay chandratre <akshaychandratre44@gmail.com>; Mahendra Singh <msmahendrasingh18@gmail.com>; Pgsql-admin <pgsql-admin@lists.postgresql.org>
Subject: Re: How to setup Multi-master replication on postgresql 18

 

EXTERNAL: This email originated from outside of our organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.

 

Hi Muhammet,

You can achieve at certain level multi master replication using postgres native logical replication. Latest version 18 has good conflict resolution as well.

 

On Tue, 7 Apr 2026, 5:17pm Muhammet Kurtoğlu, <muhammet.kurtoglu@bisoft.com.tr> wrote:

You can use pg_logical extension then

 

 

7 Nis 2026 Sal, saat 10:09 tarihinde akshay chandratre <akshaychandratre44@gmail.com> şunu yazdı:

Hi Muhammet,

Thanks for suggesting symetricds community.

Will check that out. But my organization wants something open-source. And on core postgresql.

 

On Mon, Apr 6, 2026 at 5:13PM Mahendra Singh <msmahendrasingh18@gmail.com> wrote:

Dear Akshay,

 

The answer is EDB Postgres Distributed. 

 

On Mon, Apr 6, 2026 at 11:09AM Muhammet Kurtoğlu <muhammet.kurtoglu@bisoft.com.tr> wrote:

Hi,

 You can use symetricds community which resolves conflicts with predefined rules on master master replication

Best REgards

 

 

akshay chandratre <akshaychandratre44@gmail.com>, 6 Nis 2026 Pzt, 09:25 tarihinde şunu yazdı:

Hi Everyone,

The client required the multimaster replication on the production environment. I want help regarding the following things:
1. How to setup multi-master replication on postgresql ?
2. How to handle the conflicts regarding the writes on both masters servers ?
3. Is it reliable for production ? Any other suggestions or options for multimaster ?

Postgresql V18
Os: centOS

 

Thanks in advance...


 

--




Notice: This e-mail is intended only for the named person or entity to which it is addressed and contains valuable business information that is privileged, confidential and/or otherwise protected from disclosure. Dissemination, distribution or copying of this e-mail or the information herein by anyone other than the intended recipient, or an employee, or agent responsible for delivering the message to the intended recipient, is strictly prohibited. All contents are the copyright property of the sender. If you are not the intended recipient, you are nevertheless bound to respect the sender's worldwide legal rights. We require that unintended recipients delete the e-mail and destroy all electronic copies in their system, retaining no copies in any media. If you have received this e-mail in error, please immediately notify us by returning the e-mail to the sender. We appreciate your cooperation.

pgsql-admin by date:

Previous
From: Jorge Batista
Date:
Subject: RE: How to setup Multi-master replication on postgresql 18
Next
From: mahamood hussain
Date:
Subject: Seeking Advice: PostgreSQL Performance Troubleshooting Without Third-Party Tools