Re: creating CHECK constraints as NOT VALID - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: creating CHECK constraints as NOT VALID
Date
Msg-id 1308002739-sup-1280@alvh.no-ip.org
Whole thread Raw
In response to Re: creating CHECK constraints as NOT VALID  (Dean Rasheed <dean.a.rasheed@gmail.com>)
Responses Re: creating CHECK constraints as NOT VALID
Re: creating CHECK constraints as NOT VALID
List pgsql-hackers
Excerpts from Dean Rasheed's message of sáb jun 11 09:32:15 -0400 2011:
> On 1 June 2011 23:47, Alvaro Herrera <alvherre@commandprompt.com> wrote:
> >
> > Here's a complete patch with all this stuff, plus doc additions and
> > simple regression tests for the new ALTER DOMAIN commands.
> >
> >    Enable CHECK constraints to be declared NOT VALID
> >
> >    This means that they can initially be added to a large existing table
> >    without checking its initial contents, but new tuples must comply to
> >    them; a separate pass invoked by ALTER TABLE / VALIDATE can verify
> >    existing data and ensure it complies with the constraint, at which point
> >    it is marked validated and becomes a normal part of the table ecosystem.
> >
> 
> I think that you also need to update the constraint exclusion code
> (get_relation_constraints() or nearby), otherwise the planner might
> exclude a relation on the basis of a CHECK constraint that is not
> currently VALID.

Ouch, yeah, thanks for pointing that out.  Fortunately the patch to fix
this is quite simple.  I don't have it handy right now but I'll post it
soon.

-- 
Álvaro Herrera <alvherre@commandprompt.com>
The PostgreSQL Company - Command Prompt, Inc.
PostgreSQL Replication, Consulting, Custom Development, 24x7 support


pgsql-hackers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: wrong message on REASSIGN OWNED
Next
From: Josh Berkus
Date:
Subject: Re: creating CHECK constraints as NOT VALID