aboutsummaryrefslogtreecommitdiff
path: root/src/backend/storage/ipc/shmem.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/storage/ipc/shmem.c')
-rw-r--r--src/backend/storage/ipc/shmem.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/backend/storage/ipc/shmem.c b/src/backend/storage/ipc/shmem.c
index 682fe05a83f..979a3ebe967 100644
--- a/src/backend/storage/ipc/shmem.c
+++ b/src/backend/storage/ipc/shmem.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/storage/ipc/shmem.c,v 1.33 1998/12/16 11:53:46 vadim Exp $
+ * $Header: /cvsroot/pgsql/src/backend/storage/ipc/shmem.c,v 1.34 1998/12/18 09:10:34 vadim Exp $
*
*-------------------------------------------------------------------------
*/
@@ -636,7 +636,7 @@ TransactionIdIsInProgress(TransactionId xid)
* Yet another strange func for this place... - vadim 07/21/98
*/
Snapshot
-GetSnapshotData(void)
+GetSnapshotData(bool serializable)
{
Snapshot snapshot = (Snapshot) malloc(sizeof(SnapshotData));
ShmemIndexEnt *result;
@@ -648,8 +648,11 @@ GetSnapshotData(void)
Assert(ShmemIndex);
snapshot->xip = (TransactionId *) malloc(have * sizeof(TransactionId));
- snapshot->xmax = cid;
snapshot->xmin = cid;
+ if (serializable)
+ snapshot->xmax = cid;
+ else
+ ReadNewTransactionId(&(snapshot->xmax));
SpinAcquire(ShmemIndexLock);