aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/transam/xlogutils.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2002-06-15 19:54:24 +0000
committerBruce Momjian <bruce@momjian.us>2002-06-15 19:54:24 +0000
commit3c35face4108af1dcd94a02bd71c820fe1899216 (patch)
treea776e57b2bd027b19018e1d15f19de379ec68785 /src/backend/access/transam/xlogutils.c
parent78821799949dc0c96ff2c9071902cddb0e7a7e5a (diff)
downloadpostgresql-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.c9
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);