Hi Nisha.
Some review comments for v4-0001 (docs only).
======
doc/src/sgml/ref/create_publication.sgml
1.
+ TABLES IN SCHEMA { <replaceable
class="parameter">schema_name</replaceable> | CURRENT_SCHEMA } [
EXCEPT ( <replaceable
class="parameter">except_table_object</replaceable> [, ... ] ) ] [,
... ]
It is ambiguous which part does that last ellipsis applies to?
Consider instead:
TABLES IN SCHEMA tables_in_schema [, ... ]
and tables_in_schema is:
{ schema_name | CURRENT_SCHEMA } [ EXCEPT ( except_table_object [, ... ] ) ]
~~~
2.
<para>
This clause specifies a list of tables to be excluded from the
- publication.
+ publication. It can be used with both <literal>FOR ALL TABLES</literal>
+ and <literal>FOR TABLES IN SCHEMA</literal>.
</para>
Saying "both" may imply they can coexist, but they cannot.
SUGGESTION
It can be used with <literal>FOR ALL TABLES</literal> or <literal>FOR
TABLES IN SCHEMA</literal>.
~~~
3.
+ <para>
+ Create a publication that publishes all changes for all the tables
present in
+ the schema <structname>sales</structname>, except
+ <structname>sales.internal</structname> and
<structname>sales.drafts</structname>:
+<programlisting>
+CREATE PUBLICATION sales_filtered FOR TABLES IN SCHEMA sales EXCEPT
(TABLE sales.internal, sales.drafts);
+</programlisting>
+ </para>
+
AFAIK, the tables in the EXCEPT clause do not need to be
schema-qualified, so they should not be written that way in the
programlisting part of this example, because it might give the user
the impression that schema-qualified names are required.
======
Kind Regards,
Peter Smith.
Fujitsu Australia