doc: clarify when expression indexes evaluate their expressions
authorBruce Momjian <bruce@momjian.us>
Wed, 22 Dec 2021 21:29:16 +0000 (16:29 -0500)
committerBruce Momjian <bruce@momjian.us>
Wed, 22 Dec 2021 21:29:16 +0000 (16:29 -0500)
Only non-HOT updates evaluate the index expression.

Reported-by: Chris Lowder
Discussion: https://postgr.es/m/163967385701.26064.15365003480975321072@wrigleys.postgresql.org

Backpatch-through: 10

doc/src/sgml/indices.sgml

index 56fbd45178362a2ac43958058d6b43fee1c66b20..023157d8884e98b0c8aaf4e90ffd215ef11dc6c9 100644 (file)
@@ -748,8 +748,8 @@ CREATE INDEX people_names ON people ((first_name || ' ' || last_name));
 
   <para>
    Index expressions are relatively expensive to maintain, because the
-   derived expression(s) must be computed for each row upon insertion
-   and whenever it is updated.  However, the index expressions are
+   derived expression(s) must be computed for each row insertion
+   and non-HOT update.  However, the index expressions are
    <emphasis>not</emphasis> recomputed during an indexed search, since they are
    already stored in the index.  In both examples above, the system
    sees the query as just <literal>WHERE indexedcolumn = 'constant'</literal>