Cache NO ACTION foreign keys separately from RESTRICT foreign keys

Peter Eisentraut <peter@eisentraut.org>

Commit: 9926f854d07784d72aada16c8038b558fbc45d13
Author: Peter Eisentraut <peter@eisentraut.org>
Date: 2025-02-09T12:43:56Z
Releases: 18.0
Cache NO ACTION foreign keys separately from RESTRICT foreign keys

Now that we generate different SQL for temporal NO ACTION vs RESTRICT
foreign keys, we should cache their query plans with different keys.
Since the key also includes the constraint oid, this shouldn't be
necessary, but we have been seeing build farm failures that suggest we
might be sometimes using a cached NO ACTION plan to implement a RESTRICT
constraint.

Author: Paul A. Jungwirth <pj@illuminatedcomputing.com>
Discussion: https://www.postgresql.org/message-id/flat/CA+renyUApHgSZF9-nd-a0+OPGharLQLO=mDHcY4_qQ0+noCUVg@mail.gmail.com

Files

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

Discussion