aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/cache/inval.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/utils/cache/inval.c')
-rw-r--r--src/backend/utils/cache/inval.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/backend/utils/cache/inval.c b/src/backend/utils/cache/inval.c
index 396cc0bea69..59851ef02c9 100644
--- a/src/backend/utils/cache/inval.c
+++ b/src/backend/utils/cache/inval.c
@@ -455,10 +455,13 @@ RegisterRelcacheInvalidation(Oid dbId, Oid relId)
(void) GetCurrentCommandId(true);
/*
- * If the relation being invalidated is one of those cached in the
+ * If the relation being invalidated is one of those cached in the local
* relcache init file, mark that we need to zap that file at commit.
+ * (Note: perhaps it would be better if this code were a bit more
+ * decoupled from the knowledge that the init file contains exactly those
+ * non-shared rels used in catalog caches.)
*/
- if (RelationIdIsInInitFile(relId))
+ if (OidIsValid(dbId) && RelationSupportsSysCache(relId))
transInvalInfo->RelcacheInitFileInval = true;
}