Re: Selective logical replication - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Selective logical replication
Date
Msg-id CAB7nPqQkMNgMFPa6MrKno-nRma41k5be1Kwoi9eCwpgfHL6WKw@mail.gmail.com
Whole thread Raw
In response to Selective logical replication  (konstantin knizhnik <k.knizhnik@postgrespro.ru>)
List pgsql-hackers
On Thu, Nov 19, 2015 at 5:48 PM, konstantin knizhnik
<k.knizhnik@postgrespro.ru> wrote:
> I want to use logical replication for implementing multimaster (so all nodes are both sending and receiving
changes).
> But there is one "stupid" problem: how to prevent infinite recursion and not to rereplicate replicated data.
> I.e. node receives change set from some other node, applies it within some transaction, it is  written to the log and
...is replicated to other nodes.
 
> In my experiments with receiver_raw/decoder_raw infinite recursion actually doesn't happen because unique constraint
violation.
> But it is neither nice, neither efficient way of stopping infinite recursion.
>
> I wonder if there is some better way to prevent some particular transaction from been replicated?

What you are looking for to prevent this infinite recursion is the
concept of replication origin:
http://www.postgresql.org/docs/devel/static/replication-origins.html

Regarding receiver_raw/decoder_raw, I never got around to use that and
prevent the problem you are seeing :) But patches are welcome if
provided.
Regards,
-- 
Michael



pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: [DESIGN] ParallelAppend
Next
From: Amit Langote
Date:
Subject: Typo in file header comment of replorigindesc.c