aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/transam/varsup.c
diff options
context:
space:
mode:
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.
*