diff options
author | Bruce Momjian <bruce@momjian.us> | 2002-06-15 19:54:24 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 2002-06-15 19:54:24 +0000 |
commit | 3c35face4108af1dcd94a02bd71c820fe1899216 (patch) | |
tree | a776e57b2bd027b19018e1d15f19de379ec68785 /src/backend/access/transam/xlogutils.c | |
parent | 78821799949dc0c96ff2c9071902cddb0e7a7e5a (diff) | |
download | postgresql-3c35face4108af1dcd94a02bd71c820fe1899216.tar.gz postgresql-3c35face4108af1dcd94a02bd71c820fe1899216.zip |
This patch wraps all accesses to t_xmin, t_cmin, t_xmax, and t_cmax in
HeapTupleHeaderData in setter and getter macros called
HeapTupleHeaderGetXmin, HeapTupleHeaderSetXmin etc.
It also introduces a "virtual" field xvac by defining
HeapTupleHeaderGetXvac and HeapTupleHeaderSetXvac. Xvac is used by
VACUUM, in fact it is stored in t_cmin.
Manfred Koizar
Diffstat (limited to 'src/backend/access/transam/xlogutils.c')
-rw-r--r-- | src/backend/access/transam/xlogutils.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/backend/access/transam/xlogutils.c b/src/backend/access/transam/xlogutils.c index ae79ba85b1d..d7d2ae85ec8 100644 --- a/src/backend/access/transam/xlogutils.c +++ b/src/backend/access/transam/xlogutils.c @@ -6,7 +6,7 @@ * Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Header: /cvsroot/pgsql/src/backend/access/transam/xlogutils.c,v 1.23 2002/03/31 06:26:29 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/access/transam/xlogutils.c,v 1.24 2002/06/15 19:54:23 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -73,7 +73,8 @@ XLogIsOwnerOfTuple(RelFileNode hnode, ItemPointer iptr, htup = (HeapTupleHeader) PageGetItem(page, lp); Assert(PageGetSUI(page) == ThisStartUpID); - if (!TransactionIdEquals(htup->t_xmin, xid) || htup->t_cmin != cid) + if (!TransactionIdEquals(HeapTupleHeaderGetXmin(htup), xid) || + HeapTupleHeaderGetCmin(htup) != cid) { UnlockAndReleaseBuffer(buffer); return (-1); @@ -137,8 +138,8 @@ XLogIsValidTuple(RelFileNode hnode, ItemPointer iptr) { if (htup->t_infomask & HEAP_XMIN_INVALID || (htup->t_infomask & HEAP_MOVED_IN && - TransactionIdDidAbort((TransactionId) htup->t_cmin)) || - TransactionIdDidAbort(htup->t_xmin)) + TransactionIdDidAbort(HeapTupleHeaderGetXvac(htup))) || + TransactionIdDidAbort(HeapTupleHeaderGetXmin(htup))) { UnlockAndReleaseBuffer(buffer); return (false); |