Back in 367bc42 (for 9.2!) we "avoid[ed] index rebuild[ing] for no-rewrite ALTER TABLE .. ALTER TYPE." However the docs still claim that "a table rewrite is not needed; but any indexes on the affected columns must still be rebuilt."
I've attached a simple patch to update the docs to match the current behavior. Thanks, James Coleman
From f6515a5f5f39d728b4cad837480c3ca953ed4623 Mon Sep 17 00:00:00 2001 From: jcoleman <jtc331@gmail.com> Date: Tue, 29 Mar 2022 13:56:39 +0000 Subject: [PATCH v1] Docs: When table rewriting is skipped indexes are not rebuilt In 367bc42 (for 9.2!) we avoid index rebuild for no-rewrite ALTER TABLE .. ALTER TYPE. Update the docs to match. --- doc/src/sgml/ref/alter_table.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml index 5c0735e08a..39931c97c8 100644 --- a/doc/src/sgml/ref/alter_table.sgml +++ b/doc/src/sgml/ref/alter_table.sgml @@ -1366,7 +1366,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM existing column, if the <literal>USING</literal> clause does not change the column contents and the old type is either binary coercible to the new type or an unconstrained domain over the new type, a table rewrite is not - needed; but any indexes on the affected columns must still be rebuilt. + needed. Table and/or index rebuilds may take a significant amount of time for a large table; and will temporarily require as much as double the disk space. -- 2.20.1