On Thursday, April 21, 2022 12:15 PM vignesh C <vignes...@gmail.com> wrote: > Updated patch by changing the syntax to use EXCEPT instead of SKIP. Hi
This is my review comments on the v2 patch. (1) gram.y I think we can make a unified function that merges preprocess_alltables_pubobj_list with check_except_in_pubobj_list. With regard to preprocess_alltables_pubobj_list, we don't use the 2nd argument "location" in this function. (2) create_publication.sgml + <para> + Create a publication that publishes all changes in all the tables except for + the changes of <structname>users</structname> and + <structname>departments</structname> table; This sentence should end ":" not ";". (3) publication.out & publication.sql +-- fail - can't set except table to schema publication +ALTER PUBLICATION testpub_forschema SET EXCEPT TABLE testpub_tbl1; There is one unnecessary space in the comment. Kindly change from "schema publication" to "schema publication". (4) pg_dump.c & describe.c In your first email of this thread, you explained this feature is for PG16. Don't we need additional branch for PG16 ? @@ -6322,6 +6328,21 @@ describePublications(const char *pattern) } } + if (pset.sversion >= 150000) + { @@ -4162,7 +4164,7 @@ getPublicationTables(Archive *fout, TableInfo tblinfo[], int numTables) /* Collect all publication membership info. */ if (fout->remoteVersion >= 150000) appendPQExpBufferStr(query, - "SELECT tableoid, oid, prpubid, prrelid, " + "SELECT tableoid, oid, prpubid, prrelid, prexcept," (5) psql-ref.sgml + If <literal>+</literal> is appended to the command name, the tables, + except tables and schemas associated with each publication are shown as + well. I'm not sure if "except tables" is a good description. I suggest "excluded tables". This applies to the entire patch, in case if this is reasonable suggestion. Best Regards, Takamichi Osumi