>I believe there is a contrib module to help with updating foreign keys
>into proper 7.3 form. Look in contrib/adddepend.
>
>> With that in mind, how can I
>> enumerate foreign key constraints in any database, whether it was
>> originally created with postgres 7.1.3 or 7.3.x?
>
>Something looking at the triggers might work, but I'd recommend just
>getting the pg_constraint entries to exist and then using those.
Unfortunately, having all my users run contrib/adddepend isn't an
option for me. However, that script does contain a good deal of
information that I may be able to use for detecting old-style foreign
key constraints in my own code.
Okay, more questions:
I see that adddepend detects old-style foreign key constraints by
looking for groups of 3 triggers having 6 or more identical function
arguments. Is that the best way to do it? It occurs to me that an
alternative might be to find triggers that call RI_FKey_check_ins()
and have the tgisconstraint flag set. Will either approach be safe in
postgres 7.4? Perhaps a combination of the two would be best?
Would this topic be more appropriate for the hackers list?