From: | "houzj(dot)fnst(at)fujitsu(dot)com" <houzj(dot)fnst(at)fujitsu(dot)com> |
---|---|
To: | Euler Taveira <euler(at)eulerto(dot)com>, Peter Smith <smithpb2250(at)gmail(dot)com> |
Cc: | Amit Kapila <amit(dot)kapila16(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>, Tomas Vondra <tomas(dot)vondra(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-07-20 00:30:14 |
Message-ID: | OS0PR01MB571696CA853B3655F7DE752994E29@OS0PR01MB5716.jpnprd01.prod.outlook.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
I am interested in this feature and took a quick a look at the patch.
Here are a few comments.
(1)
+ appendStringInfo(&cmd, "%s", q);
We'd better use appendStringInfoString(&cmd, q);
(2)
+ whereclause = transformWhereClause(pstate,
+ copyObject(pri->whereClause),
+ EXPR_KIND_PUBLICATION_WHERE,
+ "PUBLICATION");
+
+ /* Fix up collation information */
+ assign_expr_collations(pstate, whereclause);
Is it better to invoke eval_const_expressions or canonicalize_qual here to
simplify the expression ?
(3)
+ appendPQExpBuffer(&buf,
+ ", pg_get_expr(pr.prqual, c.oid)");
+ else
+ appendPQExpBuffer(&buf,
+ ", NULL");
we'd better use appendPQExpBufferStr instead of appendPQExpBuffer here.
(4)
nodeTag(expr) == T_FuncCall)
It might looks clearer to use IsA(expr, FuncCall) here.
Best regards,
Houzj
From | Date | Subject | |
---|---|---|---|
Next Message | Arne Roland | 2021-07-20 00:51:32 | Re: Rename of triggers for partitioned tables |
Previous Message | Tom Lane | 2021-07-20 00:26:27 | Re: O_DIRECT on macOS |