Change the return value of HeapTupleSatisfiesUpdate() to be an enum,
authorNeil Conway <neilc@samurai.com>
Sun, 20 Mar 2005 23:40:34 +0000 (23:40 +0000)
committerNeil Conway <neilc@samurai.com>
Sun, 20 Mar 2005 23:40:34 +0000 (23:40 +0000)
rather than an integer, and fix the associated fallout. From Alvaro
Herrera.

src/backend/access/heap/heapam.c
src/backend/commands/async.c
src/backend/commands/trigger.c
src/backend/executor/execMain.c
src/backend/utils/time/tqual.c
src/include/access/heapam.h
src/include/utils/tqual.h

index a0cb93924ea35dc55f8629440c8f41ec20fda268..4b540c857b7dd1eb0b42053522b3078ad46835bb 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *   $PostgreSQL: pgsql/src/backend/access/heap/heapam.c,v 1.183 2005/02/20 21:46:47 tgl Exp $
+ *   $PostgreSQL: pgsql/src/backend/access/heap/heapam.c,v 1.184 2005/03/20 23:40:23 neilc Exp $
  *
  *
  * INTERFACE ROUTINES
@@ -1265,7 +1265,7 @@ simple_heap_insert(Relation relation, HeapTuple tup)
  * *ctid is set to the ctid link of the target tuple (possibly a later
  * version of the row).
  */
-int
+HTSU_Result
 heap_delete(Relation relation, ItemPointer tid,
            ItemPointer ctid, CommandId cid,
            Snapshot crosscheck, bool wait)
@@ -1275,7 +1275,7 @@ heap_delete(Relation relation, ItemPointer tid,
    HeapTupleData tp;
    PageHeader  dp;
    Buffer      buffer;
-   int         result;
+   HTSU_Result result;
 
    Assert(ItemPointerIsValid(tid));
 
@@ -1430,7 +1430,7 @@ void
 simple_heap_delete(Relation relation, ItemPointer tid)
 {
    ItemPointerData ctid;
-   int         result;
+   HTSU_Result     result;
 
    result = heap_delete(relation, tid,
                         &ctid,
@@ -1480,7 +1480,7 @@ simple_heap_delete(Relation relation, ItemPointer tid)
  * On success, newtup->t_self is set to the TID where the new tuple
  * was inserted.
  */
-int
+HTSU_Result
 heap_update(Relation relation, ItemPointer otid, HeapTuple newtup,
            ItemPointer ctid, CommandId cid,
            Snapshot crosscheck, bool wait)
@@ -1495,7 +1495,7 @@ heap_update(Relation relation, ItemPointer otid, HeapTuple newtup,
                already_marked;
    Size        newtupsize,
                pagefree;
-   int         result;
+   HTSU_Result result;
 
    Assert(ItemPointerIsValid(otid));
 
@@ -1792,7 +1792,7 @@ void
 simple_heap_update(Relation relation, ItemPointer otid, HeapTuple tup)
 {
    ItemPointerData ctid;
-   int         result;
+   HTSU_Result     result;
 
    result = heap_update(relation, otid, tup,
                         &ctid,
@@ -1822,7 +1822,7 @@ simple_heap_update(Relation relation, ItemPointer otid, HeapTuple tup)
 /*
  * heap_mark4update        - mark a tuple for update
  */
-int
+HTSU_Result
 heap_mark4update(Relation relation, HeapTuple tuple, Buffer *buffer,
                 CommandId cid)
 {
@@ -1830,7 +1830,7 @@ heap_mark4update(Relation relation, HeapTuple tuple, Buffer *buffer,
    ItemPointer tid = &(tuple->t_self);
    ItemId      lp;
    PageHeader  dp;
-   int         result;
+   HTSU_Result result;
 
    *buffer = ReadBuffer(relation, ItemPointerGetBlockNumber(tid));
    LockBuffer(*buffer, BUFFER_LOCK_EXCLUSIVE);
index 06f453df6df1b2f950f6f4a78c178e782d6e3706..11ad8c69bcec811e862d94dedd38f238251d0ba0 100644 (file)
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *   $PostgreSQL: pgsql/src/backend/commands/async.c,v 1.119 2005/01/27 23:23:54 neilc Exp $
+ *   $PostgreSQL: pgsql/src/backend/commands/async.c,v 1.120 2005/03/20 23:40:24 neilc Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -521,7 +521,7 @@ AtCommit_Notify(void)
            else if (listener->notification == 0)
            {
                ItemPointerData ctid;
-               int         result;
+               HTSU_Result     result;
 
                rTuple = heap_modifytuple(lTuple, tdesc,
                                          value, nulls, repl);
index 3f0bdbc2a8f8ac0ec78643dbe4bd25836b87a1e2..fd7d9afb836f59ea94d30b32b65cb3c3e9a38d37 100644 (file)
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *   $PostgreSQL: pgsql/src/backend/commands/trigger.c,v 1.177 2004/12/31 21:59:41 pgsql Exp $
+ *   $PostgreSQL: pgsql/src/backend/commands/trigger.c,v 1.178 2005/03/20 23:40:24 neilc Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1566,7 +1566,7 @@ GetTupleForTrigger(EState *estate, ResultRelInfo *relinfo,
 
    if (newSlot != NULL)
    {
-       int         test;
+       HTSU_Result test;
 
        /*
         * mark tuple for update
index 0294063d3f50edf92f6e30933db958e68704a458..ad3ff3e5b909cbf8aee91e38bfca7bc263598e51 100644 (file)
@@ -26,7 +26,7 @@
  *
  *
  * IDENTIFICATION
- *   $PostgreSQL: pgsql/src/backend/executor/execMain.c,v 1.242 2005/03/16 21:38:06 tgl Exp $
+ *   $PostgreSQL: pgsql/src/backend/executor/execMain.c,v 1.243 2005/03/20 23:40:25 neilc Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1116,7 +1116,7 @@ lnext:    ;
                    Buffer      buffer;
                    HeapTupleData tuple;
                    TupleTableSlot *newSlot;
-                   int         test;
+                   HTSU_Result     test;
 
                    if (!ExecGetJunkAttribute(junkfilter,
                                              slot,
@@ -1396,7 +1396,7 @@ ExecDelete(TupleTableSlot *slot,
    ResultRelInfo *resultRelInfo;
    Relation    resultRelationDesc;
    ItemPointerData ctid;
-   int         result;
+   HTSU_Result result;
 
    /*
     * get information on the (current) result relation
@@ -1500,7 +1500,7 @@ ExecUpdate(TupleTableSlot *slot,
    ResultRelInfo *resultRelInfo;
    Relation    resultRelationDesc;
    ItemPointerData ctid;
-   int         result;
+   HTSU_Result result;
    int         numIndices;
 
    /*
index 124ac1cbec0a711b061ac32217270a74b8acef7e..43909008863f39faa19685d827288188d2e47baf 100644 (file)
@@ -16,7 +16,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *   $PostgreSQL: pgsql/src/backend/utils/time/tqual.c,v 1.85 2005/02/20 15:01:42 momjian Exp $
+ *   $PostgreSQL: pgsql/src/backend/utils/time/tqual.c,v 1.86 2005/03/20 23:40:27 neilc Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -455,7 +455,7 @@ HeapTupleSatisfiesToast(HeapTupleHeader tuple, Buffer buffer)
  * tuples of my own xact are tested against the passed CommandId not
  * CurrentCommandId.
  */
-int
+HTSU_Result
 HeapTupleSatisfiesUpdate(HeapTupleHeader tuple, CommandId curcid,
                         Buffer buffer)
 {
index 5c58f32c43e7d983a3e475bde042e86561fcb9bb..6de107b76fcfbbc298b0b6b9d2646615650b67e0 100644 (file)
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $PostgreSQL: pgsql/src/include/access/heapam.h,v 1.96 2005/03/16 21:38:09 tgl Exp $
+ * $PostgreSQL: pgsql/src/include/access/heapam.h,v 1.97 2005/03/20 23:40:29 neilc Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -153,11 +153,11 @@ extern ItemPointer heap_get_latest_tid(Relation relation, Snapshot snapshot,
 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,
+extern HTSU_Result heap_delete(Relation relation, ItemPointer tid, ItemPointer ctid,
            CommandId cid, Snapshot crosscheck, bool wait);
-extern int heap_update(Relation relation, ItemPointer otid, HeapTuple tup,
+extern HTSU_Result heap_update(Relation relation, ItemPointer otid, HeapTuple tup,
        ItemPointer ctid, CommandId cid, Snapshot crosscheck, bool wait);
-extern int heap_mark4update(Relation relation, HeapTuple tup,
+extern HTSU_Result heap_mark4update(Relation relation, HeapTuple tup,
                 Buffer *userbuf, CommandId cid);
 
 extern Oid simple_heap_insert(Relation relation, HeapTuple tup);
index c72e40db7e2942a57883eb004e18fc96411ac32f..e553cfedf81e2f4d5847b8aab2c584cbc9c1c57a 100644 (file)
@@ -8,7 +8,7 @@
  * Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $PostgreSQL: pgsql/src/include/utils/tqual.h,v 1.55 2004/12/31 22:03:46 pgsql Exp $
+ * $PostgreSQL: pgsql/src/include/utils/tqual.h,v 1.56 2005/03/20 23:40:34 neilc Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -97,11 +97,14 @@ extern TransactionId RecentGlobalXmin;
 )
 
 /* Result codes for HeapTupleSatisfiesUpdate */
-#define HeapTupleMayBeUpdated      0
-#define HeapTupleInvisible         1
-#define HeapTupleSelfUpdated       2
-#define HeapTupleUpdated           3
-#define HeapTupleBeingUpdated      4
+typedef enum
+{
+   HeapTupleMayBeUpdated,
+   HeapTupleInvisible,
+   HeapTupleSelfUpdated,
+   HeapTupleUpdated,
+   HeapTupleBeingUpdated
+} HTSU_Result;
 
 /* Result codes for HeapTupleSatisfiesVacuum */
 typedef enum
@@ -119,7 +122,7 @@ extern bool HeapTupleSatisfiesDirty(HeapTupleHeader tuple, Buffer buffer);
 extern bool HeapTupleSatisfiesToast(HeapTupleHeader tuple, Buffer buffer);
 extern bool HeapTupleSatisfiesSnapshot(HeapTupleHeader tuple,
                           Snapshot snapshot, Buffer buffer);
-extern int HeapTupleSatisfiesUpdate(HeapTupleHeader tuple,
+extern HTSU_Result HeapTupleSatisfiesUpdate(HeapTupleHeader tuple,
                         CommandId curcid, Buffer buffer);
 extern HTSV_Result HeapTupleSatisfiesVacuum(HeapTupleHeader tuple,
                         TransactionId OldestXmin, Buffer buffer);