diff options
author | Michael Paquier <michael@paquier.xyz> | 2018-09-21 15:09:40 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2018-09-21 15:09:40 +0900 |
commit | 3d4b143dc7fd9d060e9f11ac6c17620f58cfc33d (patch) | |
tree | 02023292cd1f28b00e11a397a4ade5b78b089609 | |
parent | 84f14fb788523d5175fc9b5a11c36853a3697d32 (diff) | |
download | postgresql-3d4b143dc7fd9d060e9f11ac6c17620f58cfc33d.tar.gz postgresql-3d4b143dc7fd9d060e9f11ac6c17620f58cfc33d.zip |
Document lock taken on referenced table when adding a foreign key
This can happen for CREATE TABLE and ALTER TABLE, so a mention is added
to both of them in the concerned subsections.
Author: Adrien Nayrat
Discussion: https://postgr.es/m/c4e8af11-1dfc-766a-c953-76979b9fcdaa@anayrat.info
-rw-r--r-- | doc/src/sgml/ref/alter_table.sgml | 5 | ||||
-rw-r--r-- | doc/src/sgml/ref/create_table.sgml | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml index ec6b4c33113..f13a6cd944d 100644 --- a/doc/src/sgml/ref/alter_table.sgml +++ b/doc/src/sgml/ref/alter_table.sgml @@ -373,6 +373,11 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM </para> <para> + The addition of a foreign key constraint requires a + <literal>SHARE ROW EXCLUSIVE</literal> lock on the referenced table. + </para> + + <para> Additional restrictions apply when unique or primary key constraints are added to partitioned tables; see <xref linkend="sql-createtable" />. </para> diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml index a89a7e00ed6..86b758ff8eb 100644 --- a/doc/src/sgml/ref/create_table.sgml +++ b/doc/src/sgml/ref/create_table.sgml @@ -934,7 +934,9 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM is used. The referenced columns must be the columns of a non-deferrable unique or primary key constraint in the referenced table. The user must have <literal>REFERENCES</literal> permission on the referenced table - (either the whole table, or the specific referenced columns). + (either the whole table, or the specific referenced columns). The + addition of a foreign key constraint requires a + <literal>SHARE ROW EXCLUSIVE</literal> lock on the referenced table. Note that foreign key constraints cannot be defined between temporary tables and permanent tables. Also note that while it is possible to define a foreign key on a partitioned table, it is not possible to |