doc: mentioned CREATE+ATTACH PARTITION as an alternative to CREATE TABLE..PARTITION OF

Justin Pryzby <pryzby@telsasoft.com>

From: Justin Pryzby <pryzby@telsasoft.com>
To: Robert Haas <rhaas@postgresql.org>
Cc: pgsql-hackers@lists.postgresql.org, David Rowley <drowley@postgresql.org>, Alvaro Herrera <alvherre@alvh.no-ip.org>
Date: 2022-07-18T14:33:04Z
Lists: pgsql-hackers
It's easy to use CREATE TABLE..LIKE + ALTER..ATTACH PARTITION to avoid
acquiring a strong lock when creating a new partition.
But it's also easy to forget.

commit 76c0d1198cf2908423b321cd3340d296cb668c8e
Author: Justin Pryzby <pryzbyj@telsasoft.com>
Date:   Mon Jul 18 09:24:55 2022 -0500

    doc: mention CREATE+ATTACH PARTITION as an alternative to CREATE TABLE..PARTITION OF
    
    See also: 898e5e3290a72d288923260143930fb32036c00c
    Should backpatch to v12

diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml
index 6bbf15ed1a4..db7d8710bae 100644
--- a/doc/src/sgml/ref/create_table.sgml
+++ b/doc/src/sgml/ref/create_table.sgml
@@ -619,6 +619,16 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
       with <literal>DROP TABLE</literal> requires taking an <literal>ACCESS
       EXCLUSIVE</literal> lock on the parent table.
      </para>
+
+     <para>
+      Note that creating a partition acquires an <literal>ACCESS
+      EXCLUSIVE</literal> lock on the parent table.
+      It may be preferable to first CREATE a separate table and then ATTACH it,
+      which does not require as strong of a lock.
+      See <link linkend="sql-altertable-attach-partition">ATTACH PARTITION</link>
+      and <xref linkend="ddl-partitioning"/> for more information.
+     </para>
+
     </listitem>
    </varlistentry>
 



Commits

  1. Doc: mention CREATE+ATTACH PARTITION with CREATE TABLE...PARTITION OF.

  2. Allow ATTACH PARTITION with only ShareUpdateExclusiveLock.