Document how to identify an invalid index after a failed CREATE INDEX

CONCURRENTLY.

Gregory Stark
This commit is contained in:
Bruce Momjian 2007-04-03 22:38:35 +00:00
parent 9c9b619473
commit cd39718446
1 changed files with 15 additions and 2 deletions

View File

@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/create_index.sgml,v 1.60 2007/01/31 23:26:03 momjian Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/create_index.sgml,v 1.61 2007/04/03 22:38:35 momjian Exp $
PostgreSQL documentation
-->
@ -332,7 +332,20 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] <replaceable class="parameter">name</re
uniqueness violation in a unique index, the <command>CREATE INDEX</>
command will fail but leave behind an <quote>invalid</> index. This index
will be ignored for querying purposes because it might be incomplete;
however it will still consume update overhead. The recommended recovery
however it will still consume update overhead. The <application>psql</>
<command>\d</> command will mark such an index as <literal>INVALID</>:
<programlisting>
postgres=# \d tab
Table "public.tab"
Column | Type | Modifiers
--------+---------+-----------
col | integer |
Indexes:
"idx" btree (col) INVALID
</programlisting>
The recommended recovery
method in such cases is to drop the index and try again to perform
<command>CREATE INDEX CONCURRENTLY</>. (Another possibility is to rebuild
the index with <command>REINDEX</>. However, since <command>REINDEX</>