From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Mark Kazemier <mark(dot)kazemier(at)gmail(dot)com> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: Foreign key constaint can be broken |
Date: | 2010-01-26 15:59:17 |
Message-ID: | 9906.1264521557@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Mark Kazemier <mark(dot)kazemier(at)gmail(dot)com> writes:
> I found a way to break a foreign key constraint in PostgreSQL
> [ ie, make a rule that defeats an ON DELETE CASCADE operation ]
This isn't a bug, it's just the way things work. Rules (and triggers)
apply to the commands that implement foreign key updates, so a poorly
written rule can make those queries do the wrong thing. The rule can
make your regular queries do the wrong thing too, so it's not like you'd
be fine if it were done some other way. There are a number of real
applications that would be broken if rules/triggers *didn't* apply to
FK queries --- for example, using a trigger to implement logging --- so
we've concluded this is the most useful way for it to be done.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | andrew neill | 2010-01-26 16:52:55 | BUG #5296: crash when two 'add column' diagrams are open |
Previous Message | Kevin Grittner | 2010-01-26 14:55:10 | Re: BUG #5284: Postgres CPU 100% and worker took too long to start; cancelled... Systemdown |