]> granicus.if.org Git - postgresql/commit
Remove unnecessary unused MATCH PARTIAL code
authorPeter Eisentraut <peter@eisentraut.org>
Thu, 28 Feb 2019 09:54:44 +0000 (10:54 +0100)
committerPeter Eisentraut <peter@eisentraut.org>
Thu, 28 Feb 2019 10:06:33 +0000 (11:06 +0100)
commit0afdecc1e5d70f86d87fdc125b83ed4b7e3e88dd
tree1049d0d437db878efefa88cf1f1c305ca0c481b9
parent22c0d52b8dc175fe46ebb6e0ab5b2be35e02be4e
Remove unnecessary unused MATCH PARTIAL code

ri_triggers.c spends a lot of space catering to a not-yet-implemented
MATCH PARTIAL option.  An actual implementation would probably not use
the existing code structure anyway, so let's just simplify this for
now.

First, have ri_FetchConstraintInfo() check that riinfo->confmatchtype
is valid.  Then we don't have to repeat that everywhere.

In the various referential action functions, we don't need to pay
attention to the match type at all right now, so remove all that code.
A future MATCH PARTIAL implementation would probably have some
conditions added to the present code, but it won't need an entirely
separate switch branch in each case.

In RI_FKey_fk_upd_check_required(), reorganize the code to make it
much simpler.

Reviewed-by: Corey Huinker <corey.huinker@gmail.com>
Discussion: https://www.postgresql.org/message-id/flat/0ccdd3e1-10b0-dd05-d8a7-183507c11eb1%402ndquadrant.com
src/backend/utils/adt/ri_triggers.c