Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
docs: mention that expression indexes need analyze
authorBruce Momjian <bruce@momjian.us>
Thu, 12 Nov 2020 20:00:44 +0000 (15:00 -0500)
committerBruce Momjian <bruce@momjian.us>
Thu, 12 Nov 2020 20:00:44 +0000 (15:00 -0500)
Expression indexes can't benefit from pre-computed statistics on
columns.

Reported-by: Nikolay Samokhvalov
Discussion: https://postgr.es/m/CANNMO++5rw9RDA=p40iMVbMNPaW6O=S0AFzTU=KpYHRpCd1voA@mail.gmail.com

Author: Nikolay Samokhvalov, modified

Backpatch-through: 9.5

doc/src/sgml/ref/create_index.sgml

index 33aa64e81d58fd15fb2a304bcfbfa615cbdd5c1b..f4196839b2c969a414e14bdc9ee238857c8cc431 100644 (file)
@@ -741,6 +741,16 @@ Indexes:
    sort high</quote>, in queries that depend on indexes to avoid sorting steps.
   </para>
 
+  <para>
+   The regularly system collects statistics on all of a table's
+   columns.  Newly-created non-expression indexes can immediately
+   use these statistics to determine an index's usefulness.
+   For new expression indexes, it is necessary to run <link
+   linkend="sql-analyze"><command>ANALYZE</command></link> or wait for
+   the <link linkend="autovacuum">autovacuum daemon</link> to analyze
+   the table to generate statistics about new expression indexes.
+  </para>
+
   <para>
    For most index methods, the speed of creating an index is
    dependent on the setting of <xref linkend="guc-maintenance-work-mem"/>.