Foreign Key & Rule confusion WAS: Lost Trigger(s)? - Mailing list pgsql-hackers

From Rod Taylor
Subject Foreign Key & Rule confusion WAS: Lost Trigger(s)?
Date
Msg-id 014301c0be28$0552dde0$2205010a@jester
Whole thread Raw
Responses Re: Foreign Key & Rule confusion WAS: Lost Trigger(s)?  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Found the issue.  Try out the attached SQL in a fresh database.

I had honestly expected the second delete to work properly as nothing
had to be removed that table.

The rule was added as a temporary measure to protect the data
currently in the table -- without the intent of otherwise impeding the
other informations use. I suppose I forgot that the table wouldn't be
looked at as the rule is checked quite early.



CREATE TABLE junk_parent ( col SERIAL PRIMARY KEY
);

INSERT INTO junk_parent DEFAULT VALUES;
INSERT INTO junk_parent DEFAULT VALUES;
INSERT INTO junk_parent DEFAULT VALUES;

CREATE TABLE junk ( col int4 NOT NULL REFERENCES junk_parent(col) ON UPDATE CASCADE ON
DELETE CASCADE
);

INSERT INTO junk VALUES ('1');

DELETE FROM junk_parent WHERE col = 1;
DELETE FROM junk_parent WHERE col = 2;



--
Rod Taylor

There are always four sides to every story: your side, their side, the
truth, and what really happened.

pgsql-hackers by date:

Previous
From: Philip Warner
Date:
Subject: Re: Re: TODO list
Next
From: "Henry B. Hotz"
Date:
Subject: Re: Call for platforms