pgsql: Flush relcache entries when their FKs are meddled with - Mailing list pgsql-committers

From Alvaro Herrera
Subject pgsql: Flush relcache entries when their FKs are meddled with
Date
Msg-id E1gliEP-0003f0-My@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Flush relcache entries when their FKs are meddled with

Back in commit 100340e2dcd0, we made relcache entries keep lists of the
foreign keys applying to the relation -- but we forgot to update
CacheInvalidateHeapTuple to flush those entries when new FKs got created
or existing ones updated/deleted.  No bugs appear to have been reported
that would be explained by this ommission, but I noticed the problem
while working on an unrelated bugfix which clearly showed it.  Fix by
adding relcache flush on relevant foreign key changes.

Backpatch to 9.6, like the aforementioned commit.

Discussion: https://postgr.es/m/201901211927.7mmhschxlejh@alvherre.pgsql
Reviewed-by: Tom Lane

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/175544093524bef9c28c59c8d49c77b1fcf4fb92

Modified Files
--------------
src/backend/utils/cache/inval.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Second try at fixing ecpglib thread-safety problem.
Next
From: Alvaro Herrera
Date:
Subject: pgsql: Create action triggers when partitions are detached