Skip to content

Commit a5084a1

Browse files
committed
doc: Explain 'invalid' index state for CREATE INDEX CONCURRENTLY
It wasn't previously mentioned that the index is created as invalid, which is confusing to new users. Backpatch to 14 (only because of a conflict in 13). Author: Laurenz Albe <laurenz.albe@cybertec.at> Reported-by: Lauren Fliksteen <dancernerd32@gmail.com> Reviewed-by: Rajakavitha Kodhandapani <krajakavitha@gmail.com> Discussion: https://postgr.es/m/165290238488.670.7500177735573254738@wrigleys.postgresql.org
1 parent 25f915b commit a5084a1

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

doc/src/sgml/ref/create_index.sgml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -622,7 +622,8 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
622622
</para>
623623

624624
<para>
625-
In a concurrent index build, the index is actually entered into
625+
In a concurrent index build, the index is actually entered as an
626+
<quote>invalid</quote> index into
626627
the system catalogs in one transaction, then two table scans occur in
627628
two more transactions. Before each table scan, the index build must
628629
wait for existing transactions that have modified the table to terminate.
@@ -631,7 +632,7 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
631632
scan to terminate, including transactions used by any phase of concurrent
632633
index builds on other tables, if the indexes involved are partial or have
633634
columns that are not simple column references.
634-
Then finally the index can be marked ready for use,
635+
Then finally the index can be marked <quote>valid</quote> and ready for use,
635636
and the <command>CREATE INDEX</command> command terminates.
636637
Even then, however, the index may not be immediately usable for queries:
637638
in the worst case, it cannot be used as long as transactions exist that

0 commit comments

Comments
 (0)