From 6819380dd2655f1790d760b13a81f3d27dbe685a Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Mon, 28 Dec 2020 22:17:06 +0900 Subject: [PATCH] Fix inconsistent code with shared invalidations of snapshots The code in charge of processing a single invalidation message has been using since 568d413 the structure for relation mapping messages. This had fortunately no consequence as both locate the database ID at the same location, but it could become a problem in the future if this area of the code changes. Author: Konstantin Knizhnik Discussion: https://postgr.es/m/8044c223-4d3a-2cdb-42bf-29940840ce94@postgrespro.ru Backpatch-through: 9.5 --- src/backend/utils/cache/inval.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/utils/cache/inval.c b/src/backend/utils/cache/inval.c index 80bc7740fe..c7dc8267cf 100644 --- a/src/backend/utils/cache/inval.c +++ b/src/backend/utils/cache/inval.c @@ -619,9 +619,9 @@ LocalExecuteInvalidationMessage(SharedInvalidationMessage *msg) else if (msg->id == SHAREDINVALSNAPSHOT_ID) { /* We only care about our own database and shared catalogs */ - if (msg->rm.dbId == InvalidOid) + if (msg->sn.dbId == InvalidOid) InvalidateCatalogSnapshot(); - else if (msg->rm.dbId == MyDatabaseId) + else if (msg->sn.dbId == MyDatabaseId) InvalidateCatalogSnapshot(); } else