postgres.git / summary / log / commit / refs
commit 80647bf65a03e232c995c0826ef394dad8d685fe
Author: Kevin Grittner <kgrittn@postgresql.org>
Date: Mon Apr 11 20:43:52 2016 +0000
Make oldSnapshotControl a pointer to a volatile structure
It was incorrectly declared as a volatile pointer to a non-volatile
structure. Eliminate the OldSnapshotControl struct definition; it
is really not needed. Pointed out by Tom Lane.
While at it, add OldSnapshotControlData to pgindent's list of
structures.
src/backend/utils/time/snapmgr.c | 8 +++-----
src/tools/pgindent/typedefs.list | 1 +
2 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/src/backend/utils/time/snapmgr.c b/src/backend/utils/time/snapmgr.c
index 19504c35987..f18bbb980ec 100644
--- a/src/backend/utils/time/snapmgr.c
+++ b/src/backend/utils/time/snapmgr.c
@@ -117,9 +117,7 @@ typedef struct OldSnapshotControlData
TransactionId xid_by_minute[FLEXIBLE_ARRAY_MEMBER];
} OldSnapshotControlData;
-typedef struct OldSnapshotControlData *OldSnapshotControl;
-
-static volatile OldSnapshotControl oldSnapshotControl;
+static volatile OldSnapshotControlData *oldSnapshotControl;
/*
@@ -259,9 +257,9 @@ SnapMgrInit(void)
bool found;
/*
- * Create or attach to the OldSnapshotControl structure.
+ * Create or attach to the OldSnapshotControlData structure.
*/
- oldSnapshotControl = (OldSnapshotControl)
+ oldSnapshotControl = (volatile OldSnapshotControlData *)
ShmemInitStruct("OldSnapshotControlData",
SnapMgrShmemSize(), &found);
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index cdaad2089ab..794f7b10f7c 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -1175,6 +1175,7 @@ Oid
OidOptions
OkeysState
OldSerXidControl
+OldSnapshotControlData
OldToNewMapping
OldToNewMappingData
OldTriggerInfo
[parent: d8ed83cd7fd1]