doc: document the need to analyze partitioned tables
authorBruce Momjian <bruce@momjian.us>
Tue, 10 Oct 2023 19:14:18 +0000 (15:14 -0400)
committerBruce Momjian <bruce@momjian.us>
Tue, 10 Oct 2023 19:14:18 +0000 (15:14 -0400)
Autovacuum does not do it.

Reported-by: Justin Pryzby
Discussion: https://postgr.es/m/20210913035409.GA10647@telsasoft.com

Backpatch-through: 11

doc/src/sgml/maintenance.sgml

index 8a07af37a99aa3794863268acc390ae1a03bf7b5..09c0a4bacfc0237bf9c281cad4bad8ad50f2c393 100644 (file)
@@ -821,10 +821,15 @@ analyze threshold = analyze base threshold + analyze scale factor * number of tu
    </para>
 
    <para>
-    Partitioned tables are not processed by autovacuum.  Statistics
-    should be collected by running a manual <command>ANALYZE</command> when it is
-    first populated, and again whenever the distribution of data in its
-    partitions changes significantly.
+    Partitioned tables do not directly store tuples and consequently
+    are not processed by autovacuum.  (Autovacuum does process table
+    partitions just like other tables.)  Unfortunately, this means that
+    autovacuum does  not run <command>ANALYZE</command> on partitioned
+    tables, and this can cause suboptimal plans for queries that reference
+    partitioned table statistics.  You can work around this problem by
+    manually running <command>ANALYZE</command> on partitioned tables
+    when they are first populated, and again whenever the distribution
+    of data in their partitions changes significantly.
    </para>
 
    <para>