Re: Allowing REINDEX to have an optional name

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: Ashutosh Bapat <ashutosh(dot)bapat(at)enterprisedb(dot)com>
Cc: Simon Riggs <simon(dot)riggs(at)enterprisedb(dot)com>, Ashutosh Bapat <ashutosh(dot)bapat(dot)oss(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Allowing REINDEX to have an optional name
Date: 2022-05-11 05:42:26
Message-ID: YntMwnOOZF9UELKK@paquier.xyz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, May 11, 2022 at 09:54:17AM +0530, Ashutosh Bapat wrote:
> REINDEX DATABASE <database name> does system catalogs as well
> REINDEX DATABASE does everything except system catalogs
>
> That's confusing and unintuitive.

Agreed. Nobody is going to remember the difference. REINDEX's
parsing grammar is designed to be extensible because we have the
parenthesized flavor. Why don't you add an option there to skip the
catalogs, like a SKIP_CATALOG?

> Not providing the database name leads to ignoring system catalogs. I won't
> expect that from this syntax.

I don't disagree with having a shortened grammar where the database
name is not required because one cannot reindex a database different
than the one connected to, but changing a behavior based on such a
grammar difference is not a good user experience.
--
Michael

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Thomas Munro 2022-05-11 06:04:07 Re: wrong fds used for refilenodes after pg_upgrade relfilenode changes Reply-To:
Previous Message Michael Paquier 2022-05-11 05:34:25 Re: Estimating HugePages Requirements?