diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c index 74e28dd2ca..51cad38f07 100644 --- a/src/backend/access/heap/heapam.c +++ b/src/backend/access/heap/heapam.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/access/heap/heapam.c,v 1.254 2008/03/26 21:10:37 alvherre Exp $ + * $PostgreSQL: pgsql/src/backend/access/heap/heapam.c,v 1.255 2008/04/03 17:12:27 tgl Exp $ * * * INTERFACE ROUTINES @@ -1334,30 +1334,6 @@ heap_fetch(Relation relation, Buffer *userbuf, bool keep_buf, Relation stats_relation) -{ - /* Assume *userbuf is undefined on entry */ - *userbuf = InvalidBuffer; - return heap_release_fetch(relation, snapshot, tuple, - userbuf, keep_buf, stats_relation); -} - -/* - * heap_release_fetch - retrieve tuple with given tid - * - * This has the same API as heap_fetch except that if *userbuf is not - * InvalidBuffer on entry, that buffer will be released before reading - * the new page. This saves a separate ReleaseBuffer step and hence - * one entry into the bufmgr when looping through multiple fetches. - * Also, if *userbuf is the same buffer that holds the target tuple, - * we avoid bufmgr manipulation altogether. - */ -bool -heap_release_fetch(Relation relation, - Snapshot snapshot, - HeapTuple tuple, - Buffer *userbuf, - bool keep_buf, - Relation stats_relation) { ItemPointer tid = &(tuple->t_self); ItemId lp; @@ -1367,11 +1343,9 @@ heap_release_fetch(Relation relation, bool valid; /* - * get the buffer from the relation descriptor. Note that this does a - * buffer pin, and releases the old *userbuf if not InvalidBuffer. + * Fetch and pin the appropriate page of the relation. */ - buffer = ReleaseAndReadBuffer(*userbuf, relation, - ItemPointerGetBlockNumber(tid)); + buffer = ReadBuffer(relation, ItemPointerGetBlockNumber(tid)); /* * Need share lock on buffer to examine tuple commit status. diff --git a/src/include/access/heapam.h b/src/include/access/heapam.h index 4a47973f9c..50592fa16c 100644 --- a/src/include/access/heapam.h +++ b/src/include/access/heapam.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/access/heapam.h,v 1.132 2008/03/26 21:10:39 alvherre Exp $ + * $PostgreSQL: pgsql/src/include/access/heapam.h,v 1.133 2008/04/03 17:12:27 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -153,9 +153,6 @@ extern HeapTuple heap_getnext(HeapScanDesc scan, ScanDirection direction); extern bool heap_fetch(Relation relation, Snapshot snapshot, HeapTuple tuple, Buffer *userbuf, bool keep_buf, Relation stats_relation); -extern bool heap_release_fetch(Relation relation, Snapshot snapshot, - HeapTuple tuple, Buffer *userbuf, bool keep_buf, - Relation stats_relation); extern bool heap_hot_search_buffer(ItemPointer tid, Buffer buffer, Snapshot snapshot, bool *all_dead); extern bool heap_hot_search(ItemPointer tid, Relation relation,