On Wed, Nov 02, 2022 at 08:00:58AM -0700, Zhihong Yu wrote:
> Looking down in ri_PerformCheck(), I see there may be case where error from
> SPI_execute_snapshot() would skip restoring UID.
> @@ -2405,13 +2405,19 @@ ri_PerformCheck(const RI_ConstraintInfo *riinfo,
>
Looking down in ri_PerformCheck(), I see there may be case where error from
SPI_execute_snapshot() would skip restoring UID.
Please look at patch v2 which tried to handle such case.
Thanks
v2-restore-uid-trigger.patch
Description: Binary data
Hi,
I was looking at the code in ri_PlanCheck
of src/backend/utils/adt/ri_triggers.c starting at line 2289.
When qplan is NULL, we log an error. This would skip
calling SetUserIdAndSecContext().
I think the intention of the code should be restoring user id
and SecContext regardless of the outcome