Re: Column Filtering in Logical Replication

From: Peter Smith <smithpb2250(at)gmail(dot)com>
To: vignesh C <vignesh21(at)gmail(dot)com>
Cc: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Column Filtering in Logical Replication
Date: 2022-08-26 02:02:57
Message-ID: CAHut+PtJG4+0=WUMfNseUz7e7h3NffiOO8K+8Lv2GLob7vgvKA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Aug 25, 2022 at 7:38 PM vignesh C <vignesh21(at)gmail(dot)com> wrote:
>
...
> > PSA the v3* patch set.
>
> Thanks for the updated patch.
> Few comments:
> 1) We can shuffle the columns in publisher table and subscriber to
> show that the order of the column does not matter
> + <para>
> + Create a publication <literal>p1</literal>. A column list is defined for
> + table <literal>t1</literal> to reduce the number of columns that will be
> + replicated.
> +<programlisting>
> +test_pub=# CREATE PUBLICATION p1 FOR TABLE t1 (id, a, b, c);
> +CREATE PUBLICATION
> +test_pub=#
> +</programlisting></para>
>

OK. I made the following changes to the example.
- now the subscriber table defines cols in a different order than that
of the publisher table
- now the publisher column list defines col names in a different order
than that of the table
- now the column list avoids using only adjacent column names

> 2) We can try to keep the line content to less than 80 chars
> + <para>
> + A column list is specified per table following the tablename, and
> enclosed by
> + parenthesis. See <xref linkend="sql-createpublication"/> for details.
> + </para>
>

OK. Modified to use < 80 chars

> 3) tablename should be table name like it is used in other places
> + <para>
> + A column list is specified per table following the tablename, and
> enclosed by
> + parenthesis. See <xref linkend="sql-createpublication"/> for details.
> + </para>
>

Sorry, I don't see this problem. AFAIK this same issue was already
fixed in the v3* patches. Notice in the cited fragment that
'parenthesis' is misspelt but that was also fixed in v3. Maybe you are
looking at an old patch file (??)

> 4a) In the below, you could include mentioning "Only the column list
> data of publication <literal>p1</literal> are replicated."
> + <para>
> + Insert some rows to table <literal>t1</literal>.
> +<programlisting>
> +test_pub=# INSERT INTO t1 VALUES(1, 'a-1', 'b-1', 'c-1', 'd-1', 'e-1');
> +INSERT 0 1
>

OK. Modified to say this.

> 4b) In the above, we could mention that the insert should be done on
> the "publisher side" as the previous statements are executed on the
> subscriber side.

OK. Modified to say this.

~~~

Thanks for the feedback.

PSA patch set v4* where all of the above comments are now addressed.

------
Kind Regards,
Peter Smith.
Fujitsu Australia

Attachment Content-Type Size
v4-0001-Column-List-replica-identity-rules.patch application/octet-stream 2.2 KB
v4-0002-Column-List-new-pgdocs-section.patch application/octet-stream 10.7 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2022-08-26 02:09:41 Re: [PATCH] Add native windows on arm64 support
Previous Message Andres Freund 2022-08-26 01:29:07 Re: [PATCH] Add native windows on arm64 support