diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2005-08-26 20:07:17 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2005-08-26 20:07:17 +0000 |
commit | 26f1202ca318459753a39b2ced5cb6ea9cd8ab8d (patch) | |
tree | 7fc767c2ad2f343dbbbe7c3e8feae7d97d388cab /src/include/access/heapam.h | |
parent | d5bd53c2c5aea50d0a9c5a445da9da9c34990bd8 (diff) |
Back-patch fixes for problems with VACUUM destroying t_ctid chains too soon,
and with insufficient paranoia in code that follows t_ctid links.
This patch covers the 7.3 branch.
Diffstat (limited to 'src/include/access/heapam.h')
-rw-r--r-- | src/include/access/heapam.h | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/include/access/heapam.h b/src/include/access/heapam.h index 61c95268087..9241afff8a8 100644 --- a/src/include/access/heapam.h +++ b/src/include/access/heapam.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: heapam.h,v 1.79 2002/09/04 20:31:36 momjian Exp $ + * $Id: heapam.h,v 1.79.2.1 2005/08/26 20:07:17 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -156,17 +156,21 @@ extern bool heap_fetch(Relation relation, Snapshot snapshot, HeapTuple tuple, Buffer *userbuf, bool keep_buf, PgStat_Info *pgstat_info); -extern ItemPointer heap_get_latest_tid(Relation relation, Snapshot snapshot, +extern void heap_get_latest_tid(Relation relation, Snapshot snapshot, ItemPointer tid); extern void setLastTid(const ItemPointer tid); extern Oid heap_insert(Relation relation, HeapTuple tup, CommandId cid); -extern int heap_delete(Relation relation, ItemPointer tid, ItemPointer ctid, - CommandId cid); -extern int heap_update(Relation relation, ItemPointer otid, HeapTuple tup, - ItemPointer ctid, CommandId cid); -extern int heap_mark4update(Relation relation, HeapTuple tup, - Buffer *userbuf, CommandId cid); +extern int heap_delete(Relation relation, ItemPointer tid, + ItemPointer ctid, TransactionId *update_xmax, + CommandId cid); +extern int heap_update(Relation relation, ItemPointer otid, + HeapTuple newtup, + ItemPointer ctid, TransactionId *update_xmax, + CommandId cid); +extern int heap_mark4update(Relation relation, HeapTuple tuple, + Buffer *buffer, ItemPointer ctid, + TransactionId *update_xmax, CommandId cid); extern Oid simple_heap_insert(Relation relation, HeapTuple tup); extern void simple_heap_delete(Relation relation, ItemPointer tid); |