From ef7a5af77d449ee2b426f627c1f7472740350040 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 25 Mar 2025 16:45:28 +0100 Subject: [PATCH] refactor: Pass relation OID instead of Relation to createForeignKeyCheckTriggers() Currently, createForeignKeyCheckTriggers() takes a Relation type as its first argument, but it doesn't use that argument directly. Instead, it fetches the relation OID by calling RelationGetRelid(). Therefore, it would be more consistent with other functions (e.g., createForeignKeyCheckTriggers()) to pass the relation OID directly instead of the whole Relation. Author: Amul Sul Discussion: https://www.postgresql.org/message-id/flat/CAAJ_b962c5AcYW9KUt_R_ER5qs3fUGbe4az-SP-vuwPS-w-AGA@mail.gmail.com --- src/backend/commands/tablecmds.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c index 2e51503da7f..29ca7c9369c 100644 --- a/src/backend/commands/tablecmds.c +++ b/src/backend/commands/tablecmds.c @@ -580,7 +580,7 @@ static void createForeignKeyCheckTriggers(Oid myRelOid, Oid refRelOid, Oid indexOid, Oid parentInsTrigger, Oid parentUpdTrigger, Oid *insertTrigOid, Oid *updateTrigOid); -static void createForeignKeyActionTriggers(Relation rel, Oid refRelOid, +static void createForeignKeyActionTriggers(Oid myRelOid, Oid refRelOid, Constraint *fkconstraint, Oid constraintOid, Oid indexOid, Oid parentDelTrigger, Oid parentUpdTrigger, @@ -10688,7 +10688,8 @@ addFkRecurseReferenced(Constraint *fkconstraint, Relation rel, /* * Create the action triggers that enforce the constraint. */ - createForeignKeyActionTriggers(rel, RelationGetRelid(pkrel), + createForeignKeyActionTriggers(RelationGetRelid(rel), + RelationGetRelid(pkrel), fkconstraint, parentConstr, indexOid, parentDelTrigger, parentUpdTrigger, @@ -13216,7 +13217,7 @@ CreateFKCheckTrigger(Oid myRelOid, Oid refRelOid, Constraint *fkconstraint, * *updateTrigOid. */ static void -createForeignKeyActionTriggers(Relation rel, Oid refRelOid, Constraint *fkconstraint, +createForeignKeyActionTriggers(Oid myRelOid, Oid refRelOid, Constraint *fkconstraint, Oid constraintOid, Oid indexOid, Oid parentDelTrigger, Oid parentUpdTrigger, Oid *deleteTrigOid, Oid *updateTrigOid) @@ -13275,8 +13276,7 @@ createForeignKeyActionTriggers(Relation rel, Oid refRelOid, Constraint *fkconstr break; } - trigAddress = CreateTrigger(fk_trigger, NULL, refRelOid, - RelationGetRelid(rel), + trigAddress = CreateTrigger(fk_trigger, NULL, refRelOid, myRelOid, constraintOid, indexOid, InvalidOid, parentDelTrigger, NULL, true, false); if (deleteTrigOid) @@ -13336,8 +13336,7 @@ createForeignKeyActionTriggers(Relation rel, Oid refRelOid, Constraint *fkconstr break; } - trigAddress = CreateTrigger(fk_trigger, NULL, refRelOid, - RelationGetRelid(rel), + trigAddress = CreateTrigger(fk_trigger, NULL, refRelOid, myRelOid, constraintOid, indexOid, InvalidOid, parentUpdTrigger, NULL, true, false); if (updateTrigOid)