aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/nodeBitmapHeapscan.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2007-09-12 22:10:26 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2007-09-12 22:10:26 +0000
commit6889303531187f7867a5dfad5f5b5ba103f7cdd6 (patch)
treeea862682de0eb2dad6cba22fb7d0978d70fd54b2 /src/backend/executor/nodeBitmapHeapscan.c
parenteb0a7735ba1ede6a35b80d73f6c371a8b1220552 (diff)
downloadpostgresql-6889303531187f7867a5dfad5f5b5ba103f7cdd6.tar.gz
postgresql-6889303531187f7867a5dfad5f5b5ba103f7cdd6.zip
Redefine the lp_flags field of item pointers as having four states, rather
than two independent bits (one of which was never used in heap pages anyway, or at least hadn't been in a very long time). This gives us flexibility to add the HOT notions of redirected and dead item pointers without requiring anything so klugy as magic values of lp_off and lp_len. The state values are chosen so that for the states currently in use (pre-HOT) there is no change in the physical representation.
Diffstat (limited to 'src/backend/executor/nodeBitmapHeapscan.c')
-rw-r--r--src/backend/executor/nodeBitmapHeapscan.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/executor/nodeBitmapHeapscan.c b/src/backend/executor/nodeBitmapHeapscan.c
index c2ae755e014..f1e30aeb8f0 100644
--- a/src/backend/executor/nodeBitmapHeapscan.c
+++ b/src/backend/executor/nodeBitmapHeapscan.c
@@ -21,7 +21,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/executor/nodeBitmapHeapscan.c,v 1.18 2007/06/09 18:49:55 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/executor/nodeBitmapHeapscan.c,v 1.19 2007/09/12 22:10:26 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -183,7 +183,7 @@ BitmapHeapNext(BitmapHeapScanState *node)
targoffset = scan->rs_vistuples[scan->rs_cindex];
dp = (Page) BufferGetPage(scan->rs_cbuf);
lp = PageGetItemId(dp, targoffset);
- Assert(ItemIdIsUsed(lp));
+ Assert(ItemIdIsNormal(lp));
scan->rs_ctup.t_data = (HeapTupleHeader) PageGetItem((Page) dp, lp);
scan->rs_ctup.t_len = ItemIdGetLength(lp);
@@ -317,7 +317,7 @@ bitgetpage(HeapScanDesc scan, TBMIterateResult *tbmres)
/*
* Must check for deleted tuple.
*/
- if (!ItemIdIsUsed(lp))
+ if (!ItemIdIsNormal(lp))
continue;
/*