pg.ddx.io  pgsql-bugs@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: jesper.pedersen@redhat.com
Cc: pgsql-bugs@lists.postgresql.org
Subject: Re: BUG #15587: Partitions with ALTER TABLE ADD CONSTRAINT
Date: Thu, 10 Jan 2019 12:41:49 -0500
Message-ID: <3055.1547142109@sss.pgh.pa.us> (raw)
In-Reply-To: <201901101711.ngskkvwyqgr6@alvherre.pgsql>
References: <201901101711.ngskkvwyqgr6@alvherre.pgsql>

Alvaro Herrera <alvherre@2ndquadrant.com> writes:
> On 2019-Jan-10, PG Bug reporting form wrote:
>> ALTER TABLE ONLY t1 ADD CONSTRAINT uniq_t1_i1_i2 UNIQUE (i1, i2);
>> [ leads to ]
>> Indexes:
>> "uniq_t1_i1_i2" UNIQUE CONSTRAINT, btree (i1, i2) INVALID

> I'm not clear what problem you're reporting.  If you use ONLY, then the
> command doesn't cascade to create the index on partitions, and the index
> is marked invalid.  If you add the constraint to each partition and
> ALTER INDEX ATTACH PARTITION, the index on t1 should become valid when
> every partition of the table has its index.

I concur that the code is operating as designed.  I think however that
there's a user-experience problem here, which is that INVALID suggests
that something's broken.  I wonder if we could improve matters by
making psql and the docs describe this state of a partitioned index
as INCOMPLETE.

			regards, tom lane




view thread (18+ messages)  latest in thread

Message-ID: <3055.1547142109@sss.pgh.pa.us>
Permalink:  ../3055.1547142109@sss.pgh.pa.us/
Also on:    postgresql.org/message-id/3055.1547142109@sss.pgh.pa.us

 · 

reply

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-bugs@postgresql.org
  Cc: tgl@sss.pgh.pa.us, alvherre@2ndquadrant.com, jesper.pedersen@redhat.com, pgsql-bugs@lists.postgresql.org
  Subject: Re: BUG #15587: Partitions with ALTER TABLE ADD CONSTRAINT
  In-Reply-To: <3055.1547142109@sss.pgh.pa.us>

* 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