vacuum-index-cleanup-doc-rmh.patch
application/octet-stream
Filename: vacuum-index-cleanup-doc-rmh.patch
Type: application/octet-stream
Part: 0
Patch
Format: unified
| File | + | − |
|---|---|---|
| doc/src/sgml/ref/create_table.sgml | 15 | 0 |
| doc/src/sgml/ref/vacuum.sgml | 23 | 0 |
diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml
index 166078410c..2ce7a0cdbc 100644
--- a/doc/src/sgml/ref/create_table.sgml
+++ b/doc/src/sgml/ref/create_table.sgml
@@ -1344,6 +1344,21 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
</listitem>
</varlistentry>
+ <varlistentry>
+ <term><literal>vacuum_index_cleanup</literal> (<type>boolean</type>)</term>
+ <listitem>
+ <para>
+ Enables or disables index cleanup when <command>VACUUM</command> is
+ run on this table. The default value is <literal>true</literal>.
+ Disabling index cleanup can speed of <command>VACUUM</command> very
+ significantly, but may also lead to severely bloated indexes if table
+ modifications are frequent. The <literal>INDEX_CLEANUP</literal>
+ parameter to <xref linkend="sql-vacuum"/>, if specified, overrides
+ the value of this option.
+ </para>
+ </listitem>
+ </varlistentry>
+
<varlistentry>
<term><literal>autovacuum_vacuum_threshold</literal>, <literal>toast.autovacuum_vacuum_threshold</literal> (<type>integer</type>)</term>
<listitem>
diff --git a/doc/src/sgml/ref/vacuum.sgml b/doc/src/sgml/ref/vacuum.sgml
index 906d0c2ad7..13b9735c22 100644
--- a/doc/src/sgml/ref/vacuum.sgml
+++ b/doc/src/sgml/ref/vacuum.sgml
@@ -32,6 +32,7 @@ VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ ANALYZE ] [ <replaceable class="paramet
ANALYZE [ <replaceable class="parameter">boolean</replaceable> ]
DISABLE_PAGE_SKIPPING [ <replaceable class="parameter">boolean</replaceable> ]
SKIP_LOCKED [ <replaceable class="parameter">boolean</replaceable> ]
+ INDEX_CLEANUP [ <replaceable class="parameter">boolean</replaceable> ]
<phrase>and <replaceable class="parameter">table_and_columns</replaceable> is:</phrase>
@@ -181,6 +182,28 @@ VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ ANALYZE ] [ <replaceable class="paramet
</listitem>
</varlistentry>
+ <varlistentry>
+ <term><literal>INDEX_CLEANUP</literal></term>
+ <listitem>
+ <para>
+ Specifies that <command>VACUUM</command> should attempt to remove
+ index entries pointing to dead tuples. This is normally the desired
+ behavior and is the default unless the
+ <literal>vacuum_index_cleanup</literal> option has been set to false
+ for the table to be vacuumed. Setting this option to false may be
+ useful when it is necessary to make vacuum run as quickly as possible,
+ for example to avoid imminent transaction ID wraparond
+ (see <xref linkend="vacuum-for-wraparound"/>). However, if index
+ cleanup is not performed regularly, performance may suffer, because
+ as the table is modified, indexes will accumulate dead line pointers
+ and the table itself will accumulate dead line pointers that cannot be
+ removed until index cleanup is completed. This option has no effect
+ when <literal>FULL</literal> is used or for tables that do not have
+ an index.
+ </para>
+ </listitem>
+ </varlistentry>
+
<varlistentry>
<term><replaceable class="parameter">boolean</replaceable></term>
<listitem>