aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVadim B. Mikheev <vadim4o@yahoo.com>1997-08-27 09:03:47 +0000
committerVadim B. Mikheev <vadim4o@yahoo.com>1997-08-27 09:03:47 +0000
commit40ac5a692bedde826da70158cb1194e6774b8888 (patch)
treeed70f151f07dc3e93bac03684a0cdda7bc8f5df5
parentceac1d5a4ea59fa8258246b3eb3497e851a2bcb2 (diff)
downloadpostgresql-40ac5a692bedde826da70158cb1194e6774b8888.tar.gz
postgresql-40ac5a692bedde826da70158cb1194e6774b8888.zip
heap_delete returns int now (for non-functional deletes).
-rw-r--r--src/backend/access/heap/heapam.c16
-rw-r--r--src/include/access/heapam.h4
2 files changed, 11 insertions, 9 deletions
diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c
index 97d2c950b12..f199803a711 100644
--- a/src/backend/access/heap/heapam.c
+++ b/src/backend/access/heap/heapam.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/access/heap/heapam.c,v 1.14 1997/08/19 21:29:17 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/access/heap/heapam.c,v 1.15 1997/08/27 09:00:20 vadim Exp $
*
*
* INTERFACE ROUTINES
@@ -1114,7 +1114,7 @@ heap_insert(Relation relation, HeapTuple tup)
* Must decide how to handle errors.
* ----------------
*/
-void
+int
heap_delete(Relation relation, ItemPointer tid)
{
ItemId lp;
@@ -1163,7 +1163,7 @@ heap_delete(Relation relation, ItemPointer tid)
if ( IsSystemRelationName(RelationGetRelationName(relation)->data) )
RelationUnsetLockForWrite(relation);
ReleaseBuffer(b);
- return;
+ return (1);
}
/* ----------------
* check that we're deleteing a valid item
@@ -1203,6 +1203,8 @@ heap_delete(Relation relation, ItemPointer tid)
WriteBuffer(b);
if ( IsSystemRelationName(RelationGetRelationName(relation)->data) )
RelationUnsetLockForWrite(relation);
+
+ return(0);
}
/* ----------------
@@ -1302,10 +1304,10 @@ heap_replace(Relation relation, ItemPointer otid, HeapTuple tup)
NowTimeQual,
0,
(ScanKey)NULL))
- {
- ReleaseBuffer(buffer);
- elog(WARN, "heap_replace: (am)invalid otid");
- }
+ {
+ ReleaseBuffer(buffer);
+ elog(WARN, "heap_replace: (am)invalid otid");
+ }
/* XXX order problems if not atomic assignment ??? */
tup->t_oid = tp->t_oid;
diff --git a/src/include/access/heapam.h b/src/include/access/heapam.h
index 9fdb9af8e75..1819d72339a 100644
--- a/src/include/access/heapam.h
+++ b/src/include/access/heapam.h
@@ -6,7 +6,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: heapam.h,v 1.8 1997/08/26 23:31:53 momjian Exp $
+ * $Id: heapam.h,v 1.9 1997/08/27 09:03:47 vadim Exp $
*
*-------------------------------------------------------------------------
*/
@@ -124,7 +124,7 @@ extern HeapTuple heap_getnext(HeapScanDesc scandesc, int backw, Buffer *b);
extern HeapTuple heap_fetch(Relation relation, TimeQual timeQual,
ItemPointer tid, Buffer *b);
extern Oid heap_insert(Relation relation, HeapTuple tup);
-extern void heap_delete(Relation relation, ItemPointer tid);
+extern int heap_delete(Relation relation, ItemPointer tid);
extern int heap_replace(Relation relation, ItemPointer otid,
HeapTuple tup);
extern void heap_markpos(HeapScanDesc sdesc);