Re: Handle infinite recursion in logical replication setup

From: vignesh C <vignesh21(at)gmail(dot)com>
To: Peter Smith <smithpb2250(at)gmail(dot)com>
Cc: "shiy(dot)fnst(at)fujitsu(dot)com" <shiy(dot)fnst(at)fujitsu(dot)com>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Ashutosh Bapat <ashutosh(dot)bapat(dot)oss(at)gmail(dot)com>, "kuroda(dot)hayato(at)fujitsu(dot)com" <kuroda(dot)hayato(at)fujitsu(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Handle infinite recursion in logical replication setup
Date: 2022-06-28 06:17:53
Message-ID: CALDaNm0PYba4dJPO9YAnQmuCFHgLEfOBFwbfidB1-pOS3pBCXA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jun 28, 2022 at 7:29 AM Peter Smith <smithpb2250(at)gmail(dot)com> wrote:
>
> Here are my review comments for the v24* patch set.
>
> Now, these few comments are all trivial and non-functional. Apart from
> these, everything looks good to me.
>
> ========
> v24-0001
> ========
>
> No comments. LGTM
>
> ========
> V24-0002
> ========
>
> 2.1 doc/src/sgml/ref/create_subscription.sgml
>
> + <para>
> + Specifies whether the subscription will request the publisher to only
> + send changes that originated locally, or to send any changes
> + regardless of origin. Setting <literal>origin</literal> to
> + <literal>local</literal> means that the subscription will request the
> + publisher to only send changes that originated locally. Setting
> + <literal>origin</literal> to <literal>any</literal> means that the
> + publisher sends any changes regardless of their origin. The default
> + is <literal>any</literal>.
> + </para>
>
> 2.1a.
> IMO remove the word "any" from "any changes". Then the text will match
> what is written in catalogs.sgml.
> "send any changes regardless of origin" -> "send changes regardless of
> origin" (occurs 2x)

Modified

> 2.1b.
> This same text is cut/paste to the commit message so that can also be updated.

Modified

>
> ~~~
>
> 2.2 src/backend/commands/subscriptioncmds.c
>
> + /*
> + * Even though "origin" parameter allows only "local" and "any"
> + * values, the "origin" parameter type is implemented as string
> + * type instead of boolean to extend the "origin" parameter to
> + * support filtering of origin name specified by the user in the
> + * later versions.
> + */
>
> 2.2a.
> SUGGESTION
> Even though "origin" parameter allows only "local" and "any" values,
> it is implemented as a string type so that the parameter can be
> extended in future versions to support filtering using origin names
> specified by the user.

Modified

> 2.2b.
> This same text is cut/paste to the commit message so that can also be updated.

Modified

>
> ========
> v24-0003
> ========
>
> 3.1 Commit message
>

> v24-0004
> ========
>
> No comments. LGTM
>
> ------
> Kind Regards,
> Peter Smith.
> This patch does a couple of things:
> change 1) Checks and throws an error if 'copy_data = on' and 'origin =
> local' but the publication tables were also replicating from other publishers.
> change 2) Adds 'force' value for copy_data parameter.
>
> ~
>
> "replicating" -> "replicated"
> "change 1)" -> "1)"
> "change 2)" -> "2)"

Modified

Thanks for the comments, the attached v25 patch has the changes for the same.

Regards,
Vignesh

Attachment Content-Type Size
v25-0001-Add-a-missing-test-to-verify-only-local-paramete.patch text/x-patch 4.3 KB
v25-0002-Skip-replication-of-non-local-data.patch text/x-patch 57.1 KB
v25-0004-Document-bidirectional-logical-replication-steps.patch text/x-patch 13.5 KB
v25-0003-Check-and-throw-an-error-if-publication-tables-w.patch text/x-patch 37.3 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Masahiko Sawada 2022-06-28 06:24:11 Re: [PoC] Improve dead tuple storage for lazy vacuum
Previous Message Michael Paquier 2022-06-28 05:14:53 Re: [PATCH] Completed unaccent dictionary with many missing characters