]> granicus.if.org Git - postgresql/commitdiff
Clean up comments to be careful about the distinction between variable-
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 25 Aug 2002 17:20:01 +0000 (17:20 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 25 Aug 2002 17:20:01 +0000 (17:20 +0000)
width types and varlena types, since with the introduction of CSTRING as
a more-or-less-real type, these concepts aren't identical.  I've tried to
use varlena consistently to denote datatypes with typlen = -1, ie, they
have a length word and are potentially TOASTable; while the term variable
width covers both varlena and cstring (and, perhaps, someday other types
with other rules for computing the actual width).  No code changes in this
commit except for renaming a couple macros.

src/backend/access/common/heaptuple.c
src/backend/access/common/indextuple.c
src/backend/commands/trigger.c
src/backend/commands/user.c
src/backend/libpq/be-fsstubs.c
src/backend/storage/large_object/inv_api.c
src/include/access/htup.h
src/include/access/itup.h
src/include/c.h
src/include/catalog/pg_statistic.h
src/include/postgres.h

index 4aa66879feb097462694b019e8d7f17390ad79ff..5735da26d46da011210108b48003f882d7547cf7 100644 (file)
@@ -9,7 +9,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/access/common/heaptuple.c,v 1.79 2002/08/24 15:00:45 tgl Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/access/common/heaptuple.c,v 1.80 2002/08/25 17:20:00 tgl Exp $
  *
  * NOTES
  *       The old interface functions have been converted to macros
@@ -116,7 +116,7 @@ DataFill(char *data,
                else if (att[i]->attlen == -1)
                {
                        /* varlena */
-                       *infomask |= HEAP_HASVARLENA;
+                       *infomask |= HEAP_HASVARWIDTH;
                        if (VARATT_IS_EXTERNAL(value[i]))
                                *infomask |= HEAP_HASEXTERNAL;
                        if (VARATT_IS_COMPRESSED(value[i]))
@@ -127,7 +127,7 @@ DataFill(char *data,
                else if (att[i]->attlen == -2)
                {
                        /* cstring */
-                       *infomask |= HEAP_HASVARLENA;
+                       *infomask |= HEAP_HASVARWIDTH;
                        data_length = strlen(DatumGetCString(value[i])) + 1;
                        memcpy(data, DatumGetPointer(value[i]), data_length);
                }
@@ -230,9 +230,9 @@ nocachegetattr(HeapTuple tuple,
        /* ----------------
         *       Three cases:
         *
-        *       1: No nulls and no variable length attributes.
-        *       2: Has a null or a varlena AFTER att.
-        *       3: Has nulls or varlenas BEFORE att.
+        *       1: No nulls and no variable-width attributes.
+        *       2: Has a null or a var-width AFTER att.
+        *       3: Has nulls or var-widths BEFORE att.
         * ----------------
         */
 
@@ -326,7 +326,7 @@ nocachegetattr(HeapTuple tuple,
 
        /*
         * If slow is false, and we got here, we know that we have a tuple
-        * with no nulls or varlenas before the target attribute. If possible,
+        * with no nulls or var-widths before the target attribute. If possible,
         * we also want to initialize the remainder of the attribute cached
         * offset values.
         */
index a0d2dc8ef7ebcbf35d12c8c60a5ee00e165f251b..2fbc5dd0b1f3bea8d73e23afa949eccb8417940e 100644 (file)
@@ -9,7 +9,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/access/common/indextuple.c,v 1.58 2002/08/24 15:00:45 tgl Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/access/common/indextuple.c,v 1.59 2002/08/25 17:20:00 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -151,7 +151,7 @@ index_formtuple(TupleDesc tupleDescriptor,
         * already set the hasnull bit above.
         */
 
-       if (tupmask & HEAP_HASVARLENA)
+       if (tupmask & HEAP_HASVARWIDTH)
                infomask |= INDEX_VAR_MASK;
 
        /*
@@ -211,9 +211,9 @@ nocache_index_getattr(IndexTuple tup,
        /* ----------------
         *       Three cases:
         *
-        *       1: No nulls and no variable length attributes.
-        *       2: Has a null or a varlena AFTER att.
-        *       3: Has nulls or varlenas BEFORE att.
+        *       1: No nulls and no variable-width attributes.
+        *       2: Has a null or a var-width AFTER att.
+        *       3: Has nulls or var-widths BEFORE att.
         * ----------------
         */
 
@@ -302,7 +302,7 @@ nocache_index_getattr(IndexTuple tup,
                        return fetchatt(att[attnum],
                                                        tp + att[attnum]->attcacheoff);
                }
-               else if (IndexTupleHasVarlenas(tup))
+               else if (IndexTupleHasVarwidths(tup))
                {
                        int                     j;
 
@@ -319,7 +319,7 @@ nocache_index_getattr(IndexTuple tup,
 
        /*
         * If slow is false, and we got here, we know that we have a tuple
-        * with no nulls or varlenas before the target attribute. If possible,
+        * with no nulls or var-widths before the target attribute. If possible,
         * we also want to initialize the remainder of the attribute cached
         * offset values.
         */
index 82feb9333d704c68e822f474d02b7f1aad1a47cb..16da206adec2bd50c1d9eac971a4b5ae64e52998 100644 (file)
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/commands/trigger.c,v 1.128 2002/08/22 00:01:42 tgl Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/commands/trigger.c,v 1.129 2002/08/25 17:20:00 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -261,7 +261,7 @@ CreateTrigger(CreateTrigStmt *stmt, bool forConstraint)
 
                foreach(le, stmt->args)
                {
-                       char       *ar = ((Value *) lfirst(le))->val.str;
+                       char       *ar = strVal(lfirst(le));
 
                        len += strlen(ar) + 4;
                        for (; *ar; ar++)
@@ -274,7 +274,7 @@ CreateTrigger(CreateTrigStmt *stmt, bool forConstraint)
                args[0] = '\0';
                foreach(le, stmt->args)
                {
-                       char       *s = ((Value *) lfirst(le))->val.str;
+                       char       *s = strVal(lfirst(le));
                        char       *d = args + strlen(args);
 
                        while (*s)
@@ -653,8 +653,6 @@ RelationBuildTriggers(Relation relation)
        ScanKeyData skey;
        SysScanDesc     tgscan;
        HeapTuple       htup;
-       struct varlena *val;
-       bool            isnull;
 
        triggers = (Trigger *) MemoryContextAlloc(CacheMemoryContext,
                                                                                          ntrigs * sizeof(Trigger));
@@ -702,12 +700,14 @@ RelationBuildTriggers(Relation relation)
                           FUNC_MAX_ARGS * sizeof(int16));
                if (build->tgnargs > 0)
                {
+                       bytea      *val;
+                       bool            isnull;
                        char       *p;
                        int                     i;
 
-                       val = (struct varlena *) fastgetattr(htup,
-                                                                                                Anum_pg_trigger_tgargs,
-                                                                                                tgrel->rd_att, &isnull);
+                       val = (bytea *) fastgetattr(htup,
+                                                                               Anum_pg_trigger_tgargs,
+                                                                               tgrel->rd_att, &isnull);
                        if (isnull)
                                elog(ERROR, "RelationBuildTriggers: tgargs IS NULL for rel %s",
                                         RelationGetRelationName(relation));
index 60fc4b733cb8bce1799d1b84257aa0c80987c007..3e8d521ab7694c31f9fde4df05dcc78de9068d3b 100644 (file)
@@ -6,7 +6,7 @@
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Header: /cvsroot/pgsql/src/backend/commands/user.c,v 1.107 2002/08/05 03:29:17 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/user.c,v 1.108 2002/08/25 17:20:01 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -50,7 +50,7 @@ static List *IdArrayToList(IdList *oldarray);
  *     fputs_quote
  *
  *     Outputs string in quotes, with double-quotes duplicated.
- *     We could use quote_ident(), but that expects varlena.
+ *     We could use quote_ident(), but that expects a TEXT argument.
  */
 static void fputs_quote(char *str, FILE *fp)
 {
index fe31d78d3999c784125c56003eef6c103cd928f0..8f778f1de7803567714a06ed822ceb551761f7a3 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/libpq/be-fsstubs.c,v 1.61 2002/06/20 20:29:28 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/libpq/be-fsstubs.c,v 1.62 2002/08/25 17:20:01 tgl Exp $
  *
  * NOTES
  *       This should be moved to a more appropriate place.  It is here
@@ -313,24 +313,24 @@ loread(PG_FUNCTION_ARGS)
 {
        int32           fd = PG_GETARG_INT32(0);
        int32           len = PG_GETARG_INT32(1);
-       struct varlena *retval;
+       bytea      *retval;
        int                     totalread;
 
        if (len < 0)
                len = 0;
 
-       retval = (struct varlena *) palloc(VARHDRSZ + len);
+       retval = (bytea *) palloc(VARHDRSZ + len);
        totalread = lo_read(fd, VARDATA(retval), len);
        VARATT_SIZEP(retval) = totalread + VARHDRSZ;
 
-       PG_RETURN_POINTER(retval);
+       PG_RETURN_BYTEA_P(retval);
 }
 
 Datum
 lowrite(PG_FUNCTION_ARGS)
 {
        int32           fd = PG_GETARG_INT32(0);
-       struct varlena *wbuf = PG_GETARG_VARLENA_P(1);
+       bytea      *wbuf = PG_GETARG_BYTEA_P(1);
        int                     bytestowrite;
        int                     totalwritten;
 
index 5279190000ac8b26106cdc9d462b083244d61aa0..0b58f17bc1b493ee125078836bb79fb1a5acd7b3 100644 (file)
@@ -9,7 +9,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/storage/large_object/inv_api.c,v 1.94 2002/08/05 03:29:17 tgl Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/storage/large_object/inv_api.c,v 1.95 2002/08/25 17:20:01 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -396,7 +396,7 @@ inv_write(LargeObjectDesc *obj_desc, char *buf, int nbytes)
        bool            pfreeit;
        struct
        {
-               struct varlena hdr;
+               bytea           hdr;
                char            data[LOBLKSIZE];
        }                       workbuf;
        char       *workb = VARATT_DATA(&workbuf.hdr);
index 5da1c3608ed98e5d00cc0c1d973d804f901b1598..f1d9748f5c526950e5eb106bf544e12a90649010 100644 (file)
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Id: htup.h,v 1.57 2002/07/20 05:16:59 momjian Exp $
+ * $Id: htup.h,v 1.58 2002/08/25 17:20:01 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -95,8 +95,7 @@ typedef HeapTupleHeaderData *HeapTupleHeader;
  * information stored in t_infomask:
  */
 #define HEAP_HASNULL                   0x0001  /* has null attribute(s) */
-#define HEAP_HASVARLENA                        0x0002  /* has variable length
-                                                                                * attribute(s) */
+#define HEAP_HASVARWIDTH               0x0002  /* has variable-width attribute(s) */
 #define HEAP_HASEXTERNAL               0x0004  /* has external stored
                                                                                 * attribute(s) */
 #define HEAP_HASCOMPRESSED             0x0008  /* has compressed stored
@@ -425,7 +424,7 @@ typedef HeapTupleData *HeapTuple;
                (!(((HeapTuple) (tuple))->t_data->t_infomask & HEAP_HASNULL))
 
 #define HeapTupleAllFixed(tuple) \
-               (!(((HeapTuple) (tuple))->t_data->t_infomask & HEAP_HASVARLENA))
+               (!(((HeapTuple) (tuple))->t_data->t_infomask & HEAP_HASVARWIDTH))
 
 #define HeapTupleHasExternal(tuple) \
                ((((HeapTuple)(tuple))->t_data->t_infomask & HEAP_HASEXTERNAL) != 0)
index 16ad3db65a40e1bd6381afa93c1b6099e9530039..2978c398cd6a4c2b9d8f0955e2b9c8d9ec1ba2c9 100644 (file)
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Id: itup.h,v 1.35 2002/06/20 20:29:43 momjian Exp $
+ * $Id: itup.h,v 1.36 2002/08/25 17:20:01 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -28,7 +28,7 @@ typedef struct IndexTupleData
         * t_info is layed out in the following fashion:
         *
         * 15th (high) bit: has nulls
-        * 14th bit: has varlenas
+        * 14th bit: has var-width attributes
         * 13th bit: unused
         * 12-0 bit: size of tuple
         * ---------------
@@ -67,7 +67,7 @@ typedef InsertIndexResultData *InsertIndexResult;
 #define IndexTupleSize(itup)           ((Size) (((IndexTuple) (itup))->t_info & INDEX_SIZE_MASK))
 #define IndexTupleDSize(itup)          ((Size) ((itup).t_info & INDEX_SIZE_MASK))
 #define IndexTupleHasNulls(itup)       ((((IndexTuple) (itup))->t_info & INDEX_NULL_MASK))
-#define IndexTupleHasVarlenas(itup) ((((IndexTuple) (itup))->t_info & INDEX_VAR_MASK))
+#define IndexTupleHasVarwidths(itup) ((((IndexTuple) (itup))->t_info & INDEX_VAR_MASK))
 
 #define IndexTupleHasMinHeader(itup) (!IndexTupleHasNulls(itup))
 
index bfae5536a59de83e7ee8cc25b9aa294e4514c6b9..96a568712dc825cabb0ab124db11794af841ee3e 100644 (file)
@@ -4,15 +4,15 @@
  *       Fundamental C definitions.  This is included by every .c file in
  *       PostgreSQL (via either postgres.h or postgres_fe.h, as appropriate).
  *
- *       Note that the definitions here are not intended to be exposed to clients of
- *       the frontend interface libraries --- so we don't worry much about polluting
- *       the namespace with lots of stuff...
+ *       Note that the definitions here are not intended to be exposed to clients
+ *       of the frontend interface libraries --- so we don't worry much about
+ *       polluting the namespace with lots of stuff...
  *
  *
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Id: c.h,v 1.122 2002/08/21 17:20:58 petere Exp $
+ * $Id: c.h,v 1.123 2002/08/25 17:20:01 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
  *             8)              system-specific hacks
  *
  * NOTE: since this file is included by both frontend and backend modules, it's
- * almost certainly wrong to put an "extern" declaration here. typedefs and macros
- * are the kind of thing that might go here.
+ * almost certainly wrong to put an "extern" declaration here. typedefs and
+ * macros are the kind of thing that might go here.
  *
  *----------------------------------------------------------------
  */
 #ifndef C_H
 #define C_H
 
-/* We have to include stdlib.h here because it defines many of these macros
-   on some platforms, and we only want our definitions used if stdlib.h doesn't
-   have its own.  The same goes for stddef and stdarg if present.
-*/
+/*
+ * We have to include stdlib.h here because it defines many of these macros
+ * on some platforms, and we only want our definitions used if stdlib.h doesn't
+ * have its own.  The same goes for stddef and stdarg if present.
+ */
 
 #include "pg_config.h"
 #include "postgres_ext.h"
@@ -387,10 +388,11 @@ typedef struct
 /* ----------------
  *             Variable-length datatypes all share the 'struct varlena' header.
  *
- * NOTE: for TOASTable types, this is an oversimplification, since the value may be
- * compressed or moved out-of-line.  However datatype-specific routines are mostly
- * content to deal with de-TOASTed values only, and of course client-side routines
- * should never see a TOASTed value.  See postgres.h for details of the TOASTed form.
+ * NOTE: for TOASTable types, this is an oversimplification, since the value
+ * may be compressed or moved out-of-line.  However datatype-specific routines
+ * are mostly content to deal with de-TOASTed values only, and of course
+ * client-side routines should never see a TOASTed value.  See postgres.h for
+ * details of the TOASTed form.
  * ----------------
  */
 struct varlena
@@ -662,9 +664,4 @@ extern int  vsnprintf(char *str, size_t count, const char *fmt, va_list args);
 #define memmove(d, s, c)               bcopy(s, d, c)
 #endif
 
-/* ----------------
- *             end of c.h
- * ----------------
- */
-
 #endif   /* C_H */
index 7e0c0500daf1de2e4cd63bdf77d9a1c1abddddcd..478a730e925790b62ddb4e6a62724424b2286a12 100644 (file)
@@ -8,7 +8,7 @@
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Id: pg_statistic.h,v 1.16 2002/06/20 20:29:49 momjian Exp $
+ * $Id: pg_statistic.h,v 1.17 2002/08/25 17:20:01 tgl Exp $
  *
  * NOTES
  *       the genbki.sh script reads this file and generates .bki
@@ -43,7 +43,7 @@ CATALOG(pg_statistic) BKI_WITHOUT_OIDS
        /*
         * stawidth is the average width in bytes of non-null entries.  For
         * fixed-width datatypes this is of course the same as the typlen, but
-        * for varlena types it is more useful.  Note that this is the average
+        * for var-width types it is more useful.  Note that this is the average
         * width of the data as actually stored, post-TOASTing (eg, for a
         * moved-out-of-line value, only the size of the pointer object is
         * counted).  This is the appropriate definition for the primary use
index c509daf0611e09791e0aaee8e01d4090a4d70355..04451d794ad51af9c7126530d207d16623ab94f9 100644 (file)
@@ -10,7 +10,7 @@
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1995, Regents of the University of California
  *
- * $Id: postgres.h,v 1.59 2002/08/10 20:29:18 momjian Exp $
+ * $Id: postgres.h,v 1.60 2002/08/25 17:20:01 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
  *
  *      NOTES
  *
- *     In general, this file should contain declarations that are widely needed in the
- *     backend environment, but are of no interest outside the backend.
+ *     In general, this file should contain declarations that are widely needed
+ *     in the backend environment, but are of no interest outside the backend.
  *
- *     Simple type definitions live in c.h, where they are shared with postgres_fe.h.
- *     We do that since those type definitions are needed by frontend modules that want
- *     to deal with binary data transmission to or from the backend.  Type definitions
- *     in this file should be for representations that never escape the backend, such
- *     as Datum or TOASTed varlena objects.
+ *     Simple type definitions live in c.h, where they are shared with
+ *     postgres_fe.h.  We do that since those type definitions are needed by
+ *     frontend modules that want to deal with binary data transmission to or
+ *     from the backend.  Type definitions in this file should be for
+ *     representations that never escape the backend, such as Datum or
+ *     TOASTed varlena objects.
  *
  *----------------------------------------------------------------
  */
@@ -54,7 +55,8 @@
  */
 
 /* ----------------
- * struct varattrib is the header of a varlena object that may have been TOASTed.
+ * struct varattrib is the header of a varlena object that may have been
+ * TOASTed.
  * ----------------
  */
 #define TUPLE_TOASTER_ACTIVE