On Fri, Nov 20, 2009 at 5:05 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: > Robert Haas <robertmh...@gmail.com> writes: >> Random thought: would it be possible to use something like this to >> optimize foreign key constraints, by not firing them if none of the >> relevant columns have been updated? > > There already is code in there to do that; see RI_FKey_keyequal_upd_fk > and RI_FKey_keyequal_upd_pk.
*scratches head* Hmm, I see EXPLAIN showing time & calls logged against fk triggers even when I don't update any columns, unless the existing value is NULL. But maybe I'm doing something strange, or misinterpreting the output. > Earlier in the discussion of this patch I had suggested eliminating the > special-case code for FKs in favor of using a WHEN clause, but that > would probably not fly unless we can make the WHEN-based implementation > just as fast as the bespoke code; which seems unlikely. Yeah. ...Robert -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers