pgsql: Remove unnecessary unused MATCH PARTIAL code

Поиск
Список
Период
Сортировка
От Peter Eisentraut
Тема pgsql: Remove unnecessary unused MATCH PARTIAL code
Дата
Msg-id E1gzIdi-00061f-Np@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
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

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/0afdecc1e5d70f86d87fdc125b83ed4b7e3e88dd

Modified Files
--------------
src/backend/utils/adt/ri_triggers.c | 1092 ++++++++++++++---------------------
1 file changed, 438 insertions(+), 654 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: Update comment
Следующее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: Clean up some variable names in ri_triggers.c