Commit 1fe33252 authored by Peter Eisentraut's avatar Peter Eisentraut

Document that ONLY can be specified in publication commands

Author: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>
parent b6dd1271
...@@ -31,9 +31,9 @@ ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> WITH ( <repl ...@@ -31,9 +31,9 @@ ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> WITH ( <repl
ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> OWNER TO { <replaceable>new_owner</replaceable> | CURRENT_USER | SESSION_USER } ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> OWNER TO { <replaceable>new_owner</replaceable> | CURRENT_USER | SESSION_USER }
ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> RENAME TO <replaceable>new_name</replaceable> ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> RENAME TO <replaceable>new_name</replaceable>
ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> ADD TABLE <replaceable class="PARAMETER">table_name</replaceable> [, ...] ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> ADD TABLE [ ONLY ] <replaceable class="PARAMETER">table_name</replaceable> [ * ] [, ...]
ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> SET TABLE <replaceable class="PARAMETER">table_name</replaceable> [, ...] ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> SET TABLE [ ONLY ] <replaceable class="PARAMETER">table_name</replaceable> [ * ] [, ...]
ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> DROP TABLE <replaceable class="PARAMETER">table_name</replaceable> [, ...] ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> DROP TABLE [ ONLY ] <replaceable class="PARAMETER">table_name</replaceable> [ * ] [, ...]
</synopsis> </synopsis>
</refsynopsisdiv> </refsynopsisdiv>
...@@ -116,7 +116,11 @@ ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> DROP TABLE < ...@@ -116,7 +116,11 @@ ALTER PUBLICATION <replaceable class="PARAMETER">name</replaceable> DROP TABLE <
<term><replaceable class="parameter">table_name</replaceable></term> <term><replaceable class="parameter">table_name</replaceable></term>
<listitem> <listitem>
<para> <para>
Name of an existing table. Name of an existing table. If <literal>ONLY</> is specified before the
table name, only that table is affected. If <literal>ONLY</> is not
specified, the table and all its descendant tables (if any) are
affected. Optionally, <literal>*</> can be specified after the table
name to explicitly indicate that descendant tables are included.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
......
...@@ -22,7 +22,7 @@ PostgreSQL documentation ...@@ -22,7 +22,7 @@ PostgreSQL documentation
<refsynopsisdiv> <refsynopsisdiv>
<synopsis> <synopsis>
CREATE PUBLICATION <replaceable class="parameter">name</replaceable> CREATE PUBLICATION <replaceable class="parameter">name</replaceable>
[ FOR TABLE <replaceable class="parameter">table_name</replaceable> [, ...] [ FOR TABLE [ ONLY ] <replaceable class="parameter">table_name</replaceable> [ * ] [, ...]
| FOR ALL TABLES ] | FOR ALL TABLES ]
[ WITH ( <replaceable class="parameter">option</replaceable> [, ... ] ) ] [ WITH ( <replaceable class="parameter">option</replaceable> [, ... ] ) ]
...@@ -68,7 +68,12 @@ CREATE PUBLICATION <replaceable class="parameter">name</replaceable> ...@@ -68,7 +68,12 @@ CREATE PUBLICATION <replaceable class="parameter">name</replaceable>
<term><literal>FOR TABLE</literal></term> <term><literal>FOR TABLE</literal></term>
<listitem> <listitem>
<para> <para>
Specifies a list of tables to add to the publication. Specifies a list of tables to add to the publication. If
<literal>ONLY</> is specified before the table name, only
that table is added to the publication. If <literal>ONLY</> is not
specified, the table and all its descendant tables (if any) are added.
Optionally, <literal>*</> can be specified after the table name to
explicitly indicate that descendant tables are included.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
......
...@@ -71,6 +71,29 @@ Publications: ...@@ -71,6 +71,29 @@ Publications:
DROP TABLE testpub_tbl2; DROP TABLE testpub_tbl2;
DROP PUBLICATION testpub_foralltables; DROP PUBLICATION testpub_foralltables;
CREATE TABLE testpub_tbl3 (a int);
CREATE TABLE testpub_tbl3a (b text) INHERITS (testpub_tbl3);
CREATE PUBLICATION testpub3 FOR TABLE testpub_tbl3;
CREATE PUBLICATION testpub4 FOR TABLE ONLY testpub_tbl3;
\dRp+ testpub3
Publication testpub3
Inserts | Updates | Deletes
---------+---------+---------
t | t | t
Tables:
"public.testpub_tbl3"
"public.testpub_tbl3a"
\dRp+ testpub4
Publication testpub4
Inserts | Updates | Deletes
---------+---------+---------
t | t | t
Tables:
"public.testpub_tbl3"
DROP TABLE testpub_tbl3, testpub_tbl3a;
DROP PUBLICATION testpub3, testpub4;
-- fail - view -- fail - view
CREATE PUBLICATION testpub_fortbl FOR TABLE testpub_view; CREATE PUBLICATION testpub_fortbl FOR TABLE testpub_view;
ERROR: "testpub_view" is not a table ERROR: "testpub_view" is not a table
......
...@@ -44,6 +44,16 @@ SELECT pubname, puballtables FROM pg_publication WHERE pubname = 'testpub_forall ...@@ -44,6 +44,16 @@ SELECT pubname, puballtables FROM pg_publication WHERE pubname = 'testpub_forall
DROP TABLE testpub_tbl2; DROP TABLE testpub_tbl2;
DROP PUBLICATION testpub_foralltables; DROP PUBLICATION testpub_foralltables;
CREATE TABLE testpub_tbl3 (a int);
CREATE TABLE testpub_tbl3a (b text) INHERITS (testpub_tbl3);
CREATE PUBLICATION testpub3 FOR TABLE testpub_tbl3;
CREATE PUBLICATION testpub4 FOR TABLE ONLY testpub_tbl3;
\dRp+ testpub3
\dRp+ testpub4
DROP TABLE testpub_tbl3, testpub_tbl3a;
DROP PUBLICATION testpub3, testpub4;
-- fail - view -- fail - view
CREATE PUBLICATION testpub_fortbl FOR TABLE testpub_view; CREATE PUBLICATION testpub_fortbl FOR TABLE testpub_view;
CREATE PUBLICATION testpub_fortbl FOR TABLE testpub_tbl1, pub_test.testpub_nopk; CREATE PUBLICATION testpub_fortbl FOR TABLE testpub_tbl1, pub_test.testpub_nopk;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment