Re: assertions and constraint triggers - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: assertions and constraint triggers
Date
Msg-id 1281541783.26522.8.camel@vanquo.pezone.net
Whole thread Raw
In response to Re: assertions and constraint triggers  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On ons, 2010-08-11 at 10:47 -0400, Tom Lane wrote:
> > I thought the point of ASSERTIONs was that you could write a thing
> such as:
> > CREATE ASSERTION foo CHECK ((SELECT count(*) FROM tbl) = 4);
> > Enforcing that kind of constraints without true serializability
> seems 
> > impractical.
> 
> Enforcing that kind of constraint seems impractical with or without
> serializability.  You need some optimization method that avoids the
> need
> to do full-table scans after every update, or it's not going to be
> useful for any real-world situation.  Without a scheme that can do
> incremental checking for some useful class of assertion expressions,
> this isn't going to go far.

I'm not sure how great a use case there is for an assertion of the kind
"this table must contain at least 30 million rows".  But I think there
are many uses cases for checks like that on small and rarely changing
tables.



pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Inconsistent ::bit(N) and get_bit()?
Next
From: Tom Lane
Date:
Subject: Re: Regression tests versus the buildfarm environment