aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/transam/varsup.c
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2023-12-08 09:46:59 +0200
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2023-12-08 09:46:59 +0200
commit15916ffb0468d0b1036ba661767fe6e1b5fb3ee8 (patch)
tree797642079eaadc1872e5ea24f27809c17f8e2b81 /src/backend/access/transam/varsup.c
parent049ef3398d05c9dc8f48aa9a6d68440661cfeb87 (diff)
downloadpostgresql-15916ffb0468d0b1036ba661767fe6e1b5fb3ee8.tar.gz
postgresql-15916ffb0468d0b1036ba661767fe6e1b5fb3ee8.zip
Initialize ShmemVariableCache like other shmem areas
For sake of consistency. Reviewed-by: Tristan Partin, Richard Guo Discussion: https://www.postgresql.org/message-id/6537d63d-4bb5-46f8-9b5d-73a8ba4720ab@iki.fi
Diffstat (limited to 'src/backend/access/transam/varsup.c')
-rw-r--r--src/backend/access/transam/varsup.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/backend/access/transam/varsup.c b/src/backend/access/transam/varsup.c
index abfee483174..302f9296240 100644
--- a/src/backend/access/transam/varsup.c
+++ b/src/backend/access/transam/varsup.c
@@ -35,6 +35,33 @@ VariableCache ShmemVariableCache = NULL;
/*
+ * Initialization of shared memory for ShmemVariableCache.
+ */
+Size
+VarsupShmemSize(void)
+{
+ return sizeof(VariableCacheData);
+}
+
+void
+VarsupShmemInit(void)
+{
+ bool found;
+
+ /* Initialize our shared state struct */
+ ShmemVariableCache = ShmemInitStruct("ShmemVariableCache",
+ sizeof(VariableCacheData),
+ &found);
+ if (!IsUnderPostmaster)
+ {
+ Assert(!found);
+ memset(ShmemVariableCache, 0, sizeof(VariableCacheData));
+ }
+ else
+ Assert(found);
+}
+
+/*
* Allocate the next FullTransactionId for a new transaction or
* subtransaction.
*