Update some obsolete comments and column descriptions.
authorTom Lane
Tue, 24 Sep 2002 21:26:44 +0000 (21:26 +0000)
committerTom Lane
Tue, 24 Sep 2002 21:26:44 +0000 (21:26 +0000)
doc/src/sgml/catalogs.sgml
src/include/catalog/pg_type.h

index 1a3765ab63378262679a8170fd5e2d7de2b9074f..f71c3bc74b25d021029046286d886f54e2f8affa 100644 (file)
@@ -1,6 +1,6 @@
 
 
 
       aggfinalfn
       regproc
       pg_proc.oid
-      Final function
+      Final function (zero if none)
      
      
       aggtranstype
       int2
       
       
-       This is a copy of the
+       This is a copy of
        pg_type.typlen
-       for this column's type.
+       of this column's type.
       
      
 
        atttypmod records type-specific data
        supplied at table creation time (for example, the maximum
        length of a varchar column).  It is passed to
-       type-specific input and output functions as the third
-       argument. The value will generally be -1 for types that do not
-       need typmod.
+       type-specific input functions and length coercion functions.
+       The value will generally be -1 for types that do not need typmod.
       
      
 
       char
       
       
-       A copy of
+       Normally a copy of
        pg_type.typstorage
-       of this column's type
+       of this column's type.  For TOASTable datatypes, this can be altered
+       after column creation to control storage policy.
       
      
 
    table.  This includes indexes (but see also
    pg_index), sequences, views, and some
    kinds of special relation; see relkind.
-.  Below, when we mean all of these
+   Below, when we mean all of these
    kinds of objects we speak of relations.  Not all
    fields are meaningful for all relation types.
   
 
      
       conkey
-      smallint[]
+      int2[]
       pg_attribute.attnum
       If a table constraint, list of columns which the constraint constrains
      
 
      
       confkey
-      smallint[]
+      int2[]
       pg_attribute.attnum
       If a foreign key, list of the referenced columns
      
       datdba
       int4
       pg_shadow.usesysid
-      Owner of the database, initially who created it
+      Owner of the database, usually the user who created it
      
 
      
 
      
       objsubid
-      integer
+      int4
       
       For a table attribute, this is the attribute's
        column number (the objid and classid refer to the table itself).
 
      
       refobjsubid
-      integer
+      int4
       
       For a table attribute, this is the attribute's
-       column number (the objid and classid refer to the table itself).
+       column number (the refobjid and refclassid refer to the table itself).
        For all other object types, this field is presently zero.
       
      
   
    The pg_description table can store an optional description or
    comment for each database object.  Descriptions can be manipulated
-   with the COMMENT command.  Client applications
-   can view the descriptions by joining with this table.  Many built-in
-   system objects have comments associated with them that are shown by
+   with the COMMENT command and viewed with
    psql's \d commands.
+   Descriptions of many built-in system objects are provided in the initial
+   contents of pg_description.
   
 
   
       indexrelid
       oid
       pg_class.oid
-      The oid of the pg_class entry for this index
+      The OID of the pg_class entry for this index
      
 
      
       indrelid
       oid
       pg_class.oid
-      The oid of the pg_class entry for the table this index is for
+      The OID of the pg_class entry for the table this index is for
      
 
      
       indproc
       regproc
       pg_proc.oid
-      The registered procedure if this is a functional index
+      The function's OID if this is a functional index,
+      else zero
      
 
      
        INDEX_MAX_KEYS values that indicate which
        table columns this index pertains to.  For example a value of
        1 3 would mean that the first and the third
-       column make up the index key.
+       column make up the index key.  For a functional index, these
+       columns are the inputs to the function, and the function's return
+       value is the index key.
       
      
 
       text
       
       Expression tree (in the form of a nodeToString representation)
-      for partial index predicate
+      for partial index predicate.  Empty string if not a partial
+      index.
      
     
    
       oid
       pg_class.oid
       
-       This is the reference to the subtable, that is, it records the
-       fact that the identified table is inherited from some other
-       table.
+       The OID of the child table.
       
      
 
       oid
       pg_class.oid
       
-       This is the reference to the parent table, which the table
-       referenced by inhrelid inherited
-       from.
+       The OID of the parent table.
       
      
 
       int4
       
       
-       If there is more than one parent for a subtable (multiple
+       If there is more than one parent for a child table (multiple
        inheritance), this number tells the order in which the
        inherited columns are to be arranged.  The count starts at 1.
       
    
   
 
+  
+   Unused fields contain zeroes, for example oprleft is zero for a
+   prefix operator.
+  
+
  
 
 
      
 
      
-      proistrusted
+      prosecdef
       bool
       
-      not functional
+      Function is a security definer (i.e., a setuid
+      function)
      
 
      
       prorettype
       oid
       pg_type.oid
-      Data type of the return value (0 if the function does not return a value)
+      Data type of the return value
      
 
      
       Rule name
      
 
-     
-      ev_type
-      char
-      
-      Event type that the rule is for: '1' = SELECT,
-      '2' = UPDATE, '3' = INSERT, '4' = DELETE
-     
-
      
       ev_class
       oid
       indicate the whole table)
      
 
+     
+      ev_type
+      char
+      
+      Event type that the rule is for: '1' = SELECT,
+      '2' = UPDATE, '3' = INSERT, '4' = DELETE
+     
+
      
       is_instead
       bool
       tgname
       name
       
-      Trigger name (need not be unique)
+      Trigger name (must be unique among triggers of same table)
      
 
      
       tgisconstraint
       bool
       
-      True if trigger is a RI constraint
+      True if trigger implements an RI constraint
      
 
      
       
       True if the type is defined, false if this is a placeholder
       entry for a not-yet-defined type.  When typisdefined is false,
-      nothing except the type name and OID can be relied on.
+      nothing except the type name, namespace, and OID can be relied on.
       
      
 
       typinput
       regproc
       pg_proc.oid
-      Input function
+      Input conversion function
      
 
      
       typoutput
       regproc
       pg_proc.oid
-      Output function
+      Output conversion function
      
 
      
       int4
       
       
-       typtypmod records type-specific data
-       supplied at table creation time (for example, the maximum
-       length of a varchar column).  It is passed to
-       type-specific input and output functions as the third
-       argument. The value will generally be -1 for types that do not
-       need typmod.  This value is copied to
-       pg_attribute.atttypmod when
-       creating a column of a domain type.
-       
+       Domains use typtypmod to record the typmod
+       to be applied to their base type (-1 if base type does not use a
+       typmod).  -1 if this type is not a domain.
+      
      
 
      
       
       
        typndims is the number of array dimensions
-       for a domain that is an array.  (The array element type is
-       typbasetype.)  Zero for non-domains and non-array domains.
-       This value is copied to
-       pg_attribute.attndims when
-       creating a column of a domain type.
+       for a domain that is an array (that is, typbasetype is an array type;
+       the domain's typelem will match the base type's typelem).
+       Zero for non-domains and non-array domains.
        
      
 
index 09ebbe5e05df9ec464cce76526df97d14f09cf8f..06ac2f340a6d77dbafcf21e6d9e09dfea4464390 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_type.h,v 1.133 2002/09/04 20:31:42 momjian Exp $
+ * $Id: pg_type.h,v 1.134 2002/09/24 21:26:44 tgl Exp $
  *
  * NOTES
  *   the genbki.sh script reads this file and generates .bki
@@ -153,18 +153,16 @@ CATALOG(pg_type) BOOTSTRAP
    Oid         typbasetype;
 
    /*
-    * typtypmod records type-specific data supplied at domain creation
-    * time (for example, the max length of a varchar field).  It is
-    * passed to type-specific input and output functions as the third
-    * argument. The value will generally be -1 for types that do not need
-    * typmod.  This value is copied to pg_attribute.atttypmod when
-    * creating a column of a domain type.
+    * Domains use typtypmod to record the typmod to be applied to their
+    * base type (-1 if base type does not use a typmod).  -1 if this type
+    * is not a domain.
     */
    int4        typtypmod;
 
    /*
-    * typndims is the declared number of dimensions for a domain type
-    * that is an array (with element type typbasetype).  Otherwise zero.
+    * typndims is the declared number of dimensions for an array domain type
+    * (i.e., typbasetype is an array type; the domain's typelem will match
+    * the base type's typelem).  Otherwise zero.
     */
    int4        typndims;