Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
doc: Reword ALTER TABLE ATTACH restriction on NO INHERIT constraints
authorÁlvaro Herrera <alvherre@alvh.no-ip.org>
Thu, 7 Nov 2024 13:06:24 +0000 (14:06 +0100)
committerÁlvaro Herrera <alvherre@alvh.no-ip.org>
Thu, 7 Nov 2024 13:06:24 +0000 (14:06 +0100)
The previous wording is easy to read incorrectly; this change makes it
simpler, less ambiguous, and less prominent.

Backpatch to all live branches.

Reviewed-by: Amit Langote <amitlangote09@gmail.com>
Discussion: https://postgr.es/m/202411051201.zody6mld7vkw@alvherre.pgsql

doc/src/sgml/ref/alter_table.sgml

index 1a49f321cf702c9ca0352dd427049731f2f2d557..c6ab432df1483d3bf3865646125f55616a045a35 100644 (file)
@@ -1010,20 +1010,18 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
      <para>
       A partition using <literal>FOR VALUES</literal> uses same syntax for
       <replaceable class="parameter">partition_bound_spec</replaceable> as
-      <link linkend="sql-createtable"><command>CREATE TABLE</command></link>.  The partition bound specification
+      <link linkend="sql-createtable"><command>CREATE TABLE</command></link>.
+      The partition bound specification
       must correspond to the partitioning strategy and partition key of the
       target table.  The table to be attached must have all the same columns
       as the target table and no more; moreover, the column types must also
       match.  Also, it must have all the <literal>NOT NULL</literal> and
-      <literal>CHECK</literal> constraints of the target table.  Currently
+      <literal>CHECK</literal> constraints of the target table, not marked
+      <literal>NO INHERIT</literal>.  Currently
       <literal>FOREIGN KEY</literal> constraints are not considered.
       <literal>UNIQUE</literal> and <literal>PRIMARY KEY</literal> constraints
       from the parent table will be created in the partition, if they don't
       already exist.
-      If any of the <literal>CHECK</literal> constraints of the table being
-      attached are marked <literal>NO INHERIT</literal>, the command will fail;
-      such constraints must be recreated without the
-      <literal>NO INHERIT</literal> clause.
      </para>
 
      <para>