CREATE CONSTRAINT TRIGGER doesn't respect attisdropped.  Unfortunately I
really don't have the time to submit a patch at the moment - sorry :(

ctest=# create table master (x int unique, y int4 unique);
NOTICE:  CREATE TABLE / UNIQUE will create implicit index 'master_x_key' for
table 'master'
NOTICE:  CREATE TABLE / UNIQUE will create implicit index 'master_y_key' for
table 'master'
CREATE TABLE
test=# create table slave (a int);
CREATE TABLE
test=# alter table master drop x;
ALTER TABLE
test=# create constraint trigger "$1" after insert or update on "slave" from
master not deferrable initially immediate for each row execute procedure
"RI_FKey_check_ins" ('$1', 'slave', 'master', 'UNSPECIFIED', 'a', 'x');
CREATE TRIGGER
test=# insert into master values (1);
INSERT 16982 1
test=# insert into slave values (2);
ERROR:  constraint $1: table master does not have an attribute x

Chris


Thu, 15 Aug 2002 13:55:20 +0800
"Christopher Kings-Lynne" <chriskl@familyhealth.com.au>
Bug with CREATE CONSRAINT TRIGGER and attisdropped
"Christopher Kings-Lynne" <chriskl@familyhealth.com.au> writes:
> CREATE CONSTRAINT TRIGGER doesn't respect attisdropped.  Unfortunately I
> really don't have the time to submit a patch at the moment - sorry :(

> test=# create constraint trigger "$1" after insert or update on "slave" from
> master not deferrable initially immediate for each row execute procedure
> "RI_FKey_check_ins" ('$1', 'slave', 'master', 'UNSPECIFIED', 'a', 'x');

I'm not sure this is a bug.  For CREATE CONSTRAINT TRIGGER to complain
at trigger creation time, you'd have to make it assume that it
understood the contents of the parameters passed to the trigger.
That seems like a bad idea; I'm willing to settle for run-time
detection instead.

			regards, tom lane

Thu, 15 Aug 2002 02:03:18 -0400
Tom Lane <tgl@sss.pgh.pa.us>
Re: Bug with CREATE CONSRAINT TRIGGER and attisdropped 