From 44c2e6dc79fbac78185816612b6a49c05557232b Mon Sep 17 00:00:00 2001
From: "David G. Johnston" <David.G.Johnston@Gmail.com>
Date: Fri, 9 Jan 2026 08:54:48 -0700
Subject: [PATCH] docs: ONLY tweaks and bulk note removal

---
 doc/src/sgml/ref/alter_table.sgml | 74 ++++++-------------------------
 1 file changed, 14 insertions(+), 60 deletions(-)

diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml
index 75a26087eb6..adf988b420e 100644
--- a/doc/src/sgml/ref/alter_table.sgml
+++ b/doc/src/sgml/ref/alter_table.sgml
@@ -529,9 +529,9 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
       at the time of data insertion to determine the method to use.
      </para>
      <para>
-      When applied to a partitioned table, the compression method must be
-      applied separately to the partitioned table and/or to individual partitions.
-      Specifying <literal>ONLY</literal> is allowed but has no effect.
+      When applied to a partitioned table <literal>ONLY</literal> is implicit,
+      the compression method must be applied separately to the partitioned table
+      and/or to individual partitions.
       However, newly created partitions inherit the compression method from the
       partitioned table unless they define a different compression method.
      </para>
@@ -903,8 +903,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
       <varname>default_table_access_method</varname>. Specifying
       <literal>DEFAULT</literal> removes a previously set access method,
       causing future partitions to use
-      <varname>default_table_access_method</varname>. Specifying
-      <literal>ONLY</literal> is allowed but has no effect.
+      <varname>default_table_access_method</varname>.
      </para>
     </listitem>
    </varlistentry>
@@ -921,7 +920,6 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
       partitions are not affected, but partitions created afterwards with
       <command>CREATE TABLE PARTITION OF</command> will use the specified
       tablespace unless overridden by a <literal>TABLESPACE</literal> clause.
-      Specifying <literal>ONLY</literal> is allowed but has no effect.
      </para>
      <para>
       All tables in the current database in a tablespace can be moved by using
@@ -1062,10 +1060,8 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
       definition.
      </para>
      <para>
-      When applied to a partitioned table, this form affects only the
-      partitioned table itself. Specifying <literal>ONLY</literal> is
-      allowed but has no effect, and this form cannot be used on individual
-      partitions.
+      When applied to a partitioned table <literal>ONLY</literal> is implicit,
+      and this form cannot be used on individual partitions.
      </para>
     </listitem>
    </varlistentry>
@@ -1077,10 +1073,8 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
       This form dissociates a typed table from its type.
      </para>
      <para>
-      When applied to a partitioned table, this form affects only the
-      partitioned table itself. Specifying <literal>ONLY</literal> is
-      allowed but has no effect, and this form cannot be used on individual
-      partitions.
+      When applied to a partitioned table <literal>ONLY</literal> is implicit,
+      and this form cannot be used on individual partitions.
      </para>
     </listitem>
    </varlistentry>
@@ -1156,8 +1150,9 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
      </variablelist></para>
 
      <para>
-      For partitioned tables, this form must be applied independently to the
-      partitioned table and/or to individual partitions.
+      When applied to a partitioned table <literal>ONLY</literal> is implicit,
+      this form must be applied independently to the partitioned table and/or
+      to individual partitions.
       Newly created partitions do not inherit the setting from the
       partitioned table.
      </para>
@@ -1191,8 +1186,9 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
       constraints, and sequences owned by table columns are moved as well.
      </para>
      <para>
-      For partitioned tables, this form must be applied independently to the
-      partitioned table and/or to individual partitions.
+      When applied to a partitioned table <literal>ONLY</literal> is implicit,
+      this form must be applied independently to the partitioned table and/or
+      to individual partitions.
       Newly created partitions do not inherit their schema from the
       partitioned table.
      </para>
@@ -1952,48 +1948,6 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
     the column.
    </para>
 
-   <para>
-    If a table has any descendant tables, it is not permitted to add,
-    rename, or change the type of a column in the parent table without doing
-    the same to the descendants.  This ensures that the descendants always
-    have columns matching the parent.  Similarly, a <literal>CHECK</literal>
-    constraint cannot be renamed in the parent without also renaming it in
-    all descendants, so that <literal>CHECK</literal> constraints also match
-    between the parent and its descendants.  (That restriction does not apply
-    to index-based constraints, however.)
-    Also, because selecting from the parent also selects from its descendants,
-    a constraint on the parent cannot be marked valid unless it is also marked
-    valid for those descendants.  In all of these cases, <command>ALTER TABLE
-    ONLY</command> will be rejected.
-   </para>
-
-   <para>
-    A recursive <literal>DROP COLUMN</literal> operation will remove a
-    descendant table's column only if the descendant does not inherit
-    that column from any other parents and never had an independent
-    definition of the column.  A nonrecursive <literal>DROP
-    COLUMN</literal> (i.e., <command>ALTER TABLE ONLY ... DROP
-    COLUMN</command>) never removes any descendant columns, but
-    instead marks them as independently defined rather than inherited.
-    A nonrecursive <literal>DROP COLUMN</literal> command will fail for a
-    partitioned table, because all partitions of a table must have the same
-    columns as the partitioning root.
-   </para>
-
-   <para>
-    The actions for identity columns (<literal>ADD
-    GENERATED</literal>, <literal>SET</literal> etc., <literal>DROP
-    IDENTITY</literal>), as well as the actions
-    <literal>CLUSTER</literal>, <literal>OWNER</literal>,
-    and <literal>TABLESPACE</literal> never recurse to descendant tables;
-    that is, they always act as though <literal>ONLY</literal> were specified.
-    Actions affecting trigger states recurse to partitions of partitioned
-    tables (unless <literal>ONLY</literal> is specified), but never to
-    traditional-inheritance descendants.
-    Adding a constraint recurses only for <literal>CHECK</literal> constraints
-    that are not marked <literal>NO INHERIT</literal>.
-   </para>
-
    <para>
     Changing any part of a system catalog table is not permitted.
    </para>
-- 
2.34.1

