Re: pglogical vs. built-in logical replication in pg-10

From: Andres Freund <andres(at)anarazel(dot)de>
To: Achilleas Mantzios <achill(at)matrix(dot)gatewaynet(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: pglogical vs. built-in logical replication in pg-10
Date: 2017-06-22 17:30:49
Message-ID: 20170622173049.qflikmafiuqi5yd6@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 2017-06-22 18:10:40 +0300, Achilleas Mantzios wrote:
> > Once again having pg_largeobject as a system-catalog prevents LOs
> > from working smoothly. Neither replication nor having LOs on a
> > different tablespace (by moving pg_largeobject) works.

> I think logical decoding was designed for supporting DML SQL commands
> (i.e. a finite set of commands) and not specific functions (lo_*)
> which by nature can be arbitrary, infinite and version specific.

That's not really the reason. The first reason its currently unsupported
is that LOs are stored in a system catalog, and currently all system
catalogs are excluded from the change stream. The second problem is how
exactly to represent the changes - we can't represent it as the whole LO
being changed, as that'd increase the volume of WAL and replicated
writes dramatically. Thus we need to invent an API that can represent
creation, deletion, and writes to arbitrary offsets, for output plugins.

> > I wish PG in some future version will address these quirks so one can operate on LOs more smoothly.

You're welcome to help...

Greetings,

Andres Freund

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Andreas Joseph Krogh 2017-06-22 17:41:15 Re: pglogical vs. built-in logical replication in pg-10
Previous Message Andres Freund 2017-06-22 17:26:23 Re: pglogical vs. built-in logical replication in pg-10