Add nkeys parameter to recheck_matched_pk_tuple()

Amit Langote <amitlan@postgresql.org>

Commit: e1cc57fabd6c32fcb740d62da90443f8c708951e
Author: Amit Langote <amitlan@postgresql.org>
Date: 2026-04-09T05:45:31Z
Add nkeys parameter to recheck_matched_pk_tuple()

The function looped over ii_NumIndexKeyAttrs elements of the skeys
array, but one caller (ri_FastPathFlushArray) passes a one-element
array since it only handles single-column FKs.  The function
signature did not communicate this constraint, which static analysis
flags as a potential out-of-bounds read.

Add an nkeys parameter and assert that it matches
ii_NumIndexKeyAttrs, then use it in the loop.  The call sites
already know the key count.

Reported-by: Evan Montgomery-Recht <montge@mianetworks.net>
Discussion: https://postgr.es/m/CAEg7pwcKf01FmDqFAf-Hzu_pYnMYScY_Otid-pe9uw3BJ6gq9g@mail.gmail.com

Files

PathChange+/−
src/backend/utils/adt/ri_triggers.c modified +6 −5

Discussion