Обсуждение: pgsql: Improve and fix some error handling for REINDEX INDEX/TABLECONC

Поиск
Список
Период
Сортировка

pgsql: Improve and fix some error handling for REINDEX INDEX/TABLECONC

От
Michael Paquier
Дата:
Improve and fix some error handling for REINDEX INDEX/TABLE CONCURRENTLY

This improves the user experience when it comes to restrict several
flavors of REINDEX CONCURRENTLY.  First, for INDEX, remove a restriction
on shared relations as we already check after catalog relations.  Then,
for TABLE, add a proper error message when attempting to run the command
on system catalogs.  The code path of CREATE INDEX CONCURRENTLY already
complains about that, but if a REINDEX is issued then then the error
generated is confusing.

While on it, add more tests to check restrictions on catalog indexes and
on toast table/index for catalogs.  Some error messages are improved,
with wording suggestion coming from Tom Lane.

Reported-by: Tom Lane
Author: Michael Paquier
Reviewed-by: Tom Lane
Discussion: https://postgr.es/m/23694.1556806002@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/508300e2e141a9fd87758ce01374c5b0597986fd

Modified Files
--------------
src/backend/commands/indexcmds.c           | 22 +++++++++++-----------
src/test/regress/expected/create_index.out | 17 +++++++++++------
src/test/regress/sql/create_index.sql      |  7 +++++--
3 files changed, 27 insertions(+), 19 deletions(-)