Re: db_user_namespace a "temporary measure" - Mailing list pgsql-hackers

From Robert Haas
Subject Re: db_user_namespace a "temporary measure"
Date
Msg-id CA+TgmoZA8gz8-cOznh=3xd8uFB+qYGVC_b8ubQpaBwVNFxQgHw@mail.gmail.com
Whole thread Raw
In response to Re: db_user_namespace a "temporary measure"  (Andres Freund <andres@2ndquadrant.com>)
Responses Re: db_user_namespace a "temporary measure"  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Wed, Mar 12, 2014 at 9:19 AM, Andres Freund <andres@2ndquadrant.com> wrote:
>> Isn't this just a case of creating a suitable operator and an exclusion
>> constraint?  Defining the constraint in BKI might require extra
>> infrastructure, but it should be possible.
>
> Except that we don't have the infrastructure to perform such checks
> (neither partial, nor expression indexes, no exclusion constraints) on
> system tables atm. So it's not a entirely trivial thing to do.

I'm probably woefully underinformed here, but it seems like getting
exclusion constraints working might be simpler than partial indexes or
expression indexes, because both of those involve being able to
evaluate arbitrary predicates, whereas exclusion constraints just
involve invoking index access methods to look for conflicting rows via
smarts built into your index AM.  The latter seems to involve less
risk of circularity (but I might be wrong).

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



pgsql-hackers by date:

Previous
From: Christian Kruse
Date:
Subject: Re: Patch: Show process IDs of processes holding a lock; show relation and tuple infos of a lock to acquire
Next
From: Thom Brown
Date:
Subject: Re: Replication slots and footguns