From: | Ajin Cherian <itsajin(at)gmail(dot)com> |
---|---|
To: | Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> |
Cc: | Euler Taveira <euler(at)eulerto(dot)com>, "houzj(dot)fnst(at)fujitsu(dot)com" <houzj(dot)fnst(at)fujitsu(dot)com>, Greg Nancarrow <gregn4422(at)gmail(dot)com>, vignesh C <vignesh21(at)gmail(dot)com>, Peter Smith <smithpb2250(at)gmail(dot)com>, "tanghy(dot)fnst(at)fujitsu(dot)com" <tanghy(dot)fnst(at)fujitsu(dot)com>, Dilip Kumar <dilipbalaut(at)gmail(dot)com>, Rahila Syed <rahilasyed90(at)gmail(dot)com>, Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>, Önder Kalacı <onderkalaci(at)gmail(dot)com>, japin <japinli(at)hotmail(dot)com>, Michael Paquier <michael(at)paquier(dot)xyz>, David Steele <david(at)pgmasters(dot)net>, Craig Ringer <craig(at)2ndquadrant(dot)com>, Amit Langote <amitlangote09(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: row filtering for logical replication |
Date: | 2021-12-22 11:29:43 |
Message-ID: | CAFPTHDaqWcefAoVsurJDQ6bKK9_U2wNCWEuOrkt70ZKspfWhGw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Dec 21, 2021 at 5:19 PM Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> wrote:
>
> Yeah, deforming tuples again can have a significant cost but what is
> the need to maintain tmp_new_tuple in relsyncentry. I think that is
> required in rare cases, so we can probably allocate/deallocate when
> required.
Fixed this.
>
> Few other comments:
> ==================
> 1.
> TupleTableSlot *scantuple; /* tuple table slot for row filter */
> + TupleTableSlot *new_tuple; /* slot for storing deformed new tuple
> during updates */
> + TupleTableSlot *old_tuple; /* slot for storing deformed old tuple
> during updates */
>
> I think it is better to name these as scan_slot, new_slot, old_slot to
> avoid confusion with tuples.
>
Fixed this.
> 2.
> +++ b/src/backend/replication/logical/proto.c
> @@ -19,6 +19,7 @@
> #include "replication/logicalproto.h"
> #include "utils/lsyscache.h"
> #include "utils/syscache.h"
> +#include "executor/executor.h"
>
> The include is in wrong order. We keep includes in alphabatic order.
>
Fixed this.
> 3.
> @@ -832,6 +847,7 @@ logicalrep_write_tuple(StringInfo out, Relation
> rel, HeapTuple tuple, bool binar
>
> ReleaseSysCache(typtup);
> }
> +
> }
>
> Spurious addition.
>
Fixed this.
regards,
Ajin Cherian
Attachment | Content-Type | Size |
---|---|---|
v53-0002-Row-filter-updates-based-on-old-new-tuples.patch | application/octet-stream | 23.4 KB |
v53-0003-Row-filter-tab-auto-complete-and-pgdump.patch | application/octet-stream | 5.6 KB |
v53-0001-Row-filter-for-logical-replication.patch | application/octet-stream | 132.3 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Simon Riggs | 2021-12-22 11:35:56 | Re: support for MERGE |
Previous Message | Ashutosh Sharma | 2021-12-22 10:56:18 | Re: [Proposal] Fully WAL logged CREATE DATABASE - No Checkpoints |