Re: Ticket 118: Exclusion constraints

From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: Ticket 118: Exclusion constraints
Date: 2010-07-12 10:13:03
Message-ID: AANLkTinNUglIr2RFTg-e6nJokstQT9-NmDkVGibCVozH@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

On Sat, Jul 10, 2010 at 22:49, Guillaume Lelarge <guillaume(at)lelarge(dot)info> wrote:
> Hi,
>
> At least, I finally did it :)
>
> This patch adds support for exclusion constraint (9.0 new feature). All
> examples from Magnus's talk (Beyond Unique) work with this patch.
>
> Anyway, this patch needs more work:
>
> 1. Displayed in both Constraints and Indexes
>
> I don't know why but each exclusion constraint is displayed two times.
> In the indexes node (where it doesn't belong), and in the constraints
> node (where it belongs). Any idea why? should not be too hard to find
> out, but I'm unable to find it right now.

How do we do it with Primary Keys? It's the same thing - both an index
and a constraint. There should be some code to hide it, thus similar
code should be needed here.

> 2. Need an icon
>
> I copied the unique constraint icon, but we really need another one for
> this specific constraint.
>
> 3. Probably some misunderstanding of the feature
>
> Should we propose all operators for the columns? or just the ones
> related to 1. the operator class 2. the column's type 3. something else?
> actually, I propose all of them. But I don't think this is what we
> should do.

You need to show only commutative operators.

That may be we need to filter on oid=oprcom in pg_operator - I'm not
sure of that though, I didn't really investigate, but it looks like a
reasonable thing.

And yes, it should definitely be filtered on the column types.

> In Magnus's talk, I see that only GiST is supported right now as an
> index method. In PostgreSQL fine manual, it says that, to be usable, an
> index should provide the amgettuple method. And I see three of them
> support this method. Who's wrong? :)

Trust The Fine Manual.

Always remember that some of those things may also have changed since
my talk :-)

--
 Magnus Hagander
 Me: http://www.hagander.net/
 Work: http://www.redpill-linpro.com/

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Ashesh Vashi 2010-07-12 10:39:38 Re: [pgAdmin III] #209: "Connect to Server" dialog buggy
Previous Message pgAdmin Trac 2010-07-12 09:47:15 Re: [pgAdmin III] #210: Wrong Server selected after changing "Group"