From: Álvaro Herrera <alvherre@kurilemu.de>
To: Chao Li <li.evan.chao@gmail.com>
Cc: Baji Shaik <baji.pgdev@gmail.com>
Cc: pgsql-hackers@lists.postgresql.org
Subject: Re: [PATCH] Improve REPACK (CONCURRENTLY) error messages for unsupported configurations
Date: Thu, 28 May 2026 20:35:27 +0200
Message-ID: <ahiKMDxJ-G4bAy8Q@alvherre.pgsql> (raw)
In-Reply-To: <172EB2C2-DE11-4E5B-B115-38A7AD3B6A3D@gmail.com>
On 2026-May-27, Chao Li wrote:
> > 0002 -- check_concurrent_repack_requirements() reports the same
> > generic "no identity index" error for several distinct
> > cases, two of which are misleading: REPLICA IDENTITY FULL
> > (which is set, but the hint says there is no identity), and
> > a deferrable PK as the only identity (skipped per commit
> > 832e220d99a, but the hint suggests adding an index that
> > already exists). Distinguish these cases.
>
> When I was working on 832e220d99a, I actually considered for more
> detailed error messages, but I ended up giving up. I think we should
> be careful about adding more branches here unless the existing message
> is causing significant confusion in practice.
I pushed this one too (well, something close to it anyway), because I
think the replica identity issue could be an (unnecessary) usability
tripwire.
I'm curious to know why you gave up on this, if you want to share more.
Thanks both,
--
Álvaro Herrera PostgreSQL Developer — https://www.EnterpriseDB.com/
Voy a acabar con todos los humanos / con los humanos yo acabaré
voy a acabar con todos (bis) / con todos los humanos acabaré ¡acabaré! (Bender)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: alvherre@kurilemu.de, li.evan.chao@gmail.com, baji.pgdev@gmail.com, pgsql-hackers@lists.postgresql.org
Subject: Re: [PATCH] Improve REPACK (CONCURRENTLY) error messages for unsupported configurations
In-Reply-To: <ahiKMDxJ-G4bAy8Q@alvherre.pgsql>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox