Re: ALTER TABLE ... ADD FOREIGN KEY ... NOT ENFORCED
Simon Riggs <simon@2ndquadrant.com>
From: Simon Riggs <simon@2ndQuadrant.com>
To: Bruce Momjian <bruce@momjian.us>
Cc: Robert Haas <robertmhaas@gmail.com>, Rob Wultsch <wultsch@gmail.com>, Andrew Dunstan <andrew@dunslane.net>, Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers@postgresql.org
Date: 2011-01-06T08:19:55Z
Lists: pgsql-hackers
On Wed, 2011-01-05 at 22:05 -0500, Bruce Momjian wrote: > Robert Haas wrote: > > On Mon, Dec 13, 2010 at 12:59 AM, Rob Wultsch <wultsch@gmail.com> wrote: > > > On Sun, Dec 12, 2010 at 7:24 PM, Andrew Dunstan <andrew@dunslane.net> wrote: > > >> In fact it's possible now to disable FK enforcement, by disabling the > > >> triggers. It's definitely a footgun though. Just the other day I was asked > > >> how data violating the constraint could have got into the table, and caused > > >> some surprise by demonstrating how easy this was to produce. > > > > > > Ugh. I have read the entire pg manual and I did not recall that > > > footgun. ?At least in MySQL disabling fk's is explicit. There is > > > something to be said for being able to tell the database: "Hey, hold > > > my beer and watch this, it might be stupid but it is what we are going > > > to do". > > > > I couldn't agree more, and that's a great way to put it. The user is > > in charge. Our job is to prevent the user from *accidentally* > > shooting themselves in the foot. But if a crocodile is biting their > > foot off and they want to fire their gun in that direction and take > > their chances, it's not our job to say "oh, no, you might injure your > > foot". DBAs hate getting eaten by crocodiles. > > Is this a TODO? The patch I'll be submitting, or getting eaten by crocodiles? -- Simon Riggs http://www.2ndQuadrant.com/books/ PostgreSQL Development, 24x7 Support, Training and Services