Fix problem where attbyval was wrong for xid types.
authorBruce Momjian <bruce@momjian.us>
Wed, 26 Aug 1998 17:12:12 +0000 (17:12 +0000)
committerBruce Momjian <bruce@momjian.us>
Wed, 26 Aug 1998 17:12:12 +0000 (17:12 +0000)
src/backend/catalog/heap.c
src/backend/catalog/index.c
src/include/catalog/pg_attribute.h
src/include/catalog/pg_attribute_check.sql

index 99c3b485aaa3421939e40ff72f274d8916fd96bd..1e57cdca77a71ea85bb8e11b553ee487ebcbb418 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/catalog/heap.c,v 1.60 1998/08/24 01:37:46 momjian Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/catalog/heap.c,v 1.61 1998/08/26 17:12:08 momjian Exp $
  *
  * INTERFACE ROUTINES
  *     heap_create()           - Create an uncataloged heap relation
@@ -111,7 +111,7 @@ static FormData_pg_attribute a2 = {
 
 static FormData_pg_attribute a3 = {
    0xffffffff, {"xmin"}, XIDOID, 0, sizeof(TransactionId),
-   MinTransactionIdAttributeNumber, 0, -1, -1, '\0', '\0', 'i', '\0', '\0'
+   MinTransactionIdAttributeNumber, 0, -1, -1, '\001', '\0', 'i', '\0', '\0'
 };
 
 static FormData_pg_attribute a4 = {
@@ -121,7 +121,7 @@ static FormData_pg_attribute a4 = {
 
 static FormData_pg_attribute a5 = {
    0xffffffff, {"xmax"}, XIDOID, 0, sizeof(TransactionId),
-   MaxTransactionIdAttributeNumber, 0, -1, -1, '\0', '\0', 'i', '\0', '\0'
+   MaxTransactionIdAttributeNumber, 0, -1, -1, '\001', '\0', 'i', '\0', '\0'
 };
 
 static FormData_pg_attribute a6 = {
index 31eafc5867ecf30fe79dd4c309c295a4322c2d0b..6394186722442cc0bac4153dfa4477e2e44bc5ea 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.54 1998/08/26 05:22:34 momjian Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.55 1998/08/26 17:12:09 momjian Exp $
  *
  *
  * INTERFACE ROUTINES
@@ -119,9 +119,9 @@ DefaultBuild(Relation heapRelation, Relation indexRelation,
 static FormData_pg_attribute sysatts[] = {
    {0, {"ctid"}, TIDOID, 0, 6, -1, 0, -1, -1, '\0', '\0', 'i', '\0', '\0'},
    {0, {"oid"}, OIDOID, 0, 4, -2, 0, -1, -1, '\001', '\0', 'i', '\0', '\0'},
-   {0, {"xmin"}, XIDOID, 0, 4, -3, 0, -1, -1, '\0', '\0', 'i', '\0', '\0'},
+   {0, {"xmin"}, XIDOID, 0, 4, -3, 0, -1, -1, '\001', '\0', 'i', '\0', '\0'},
    {0, {"cmin"}, CIDOID, 0, 4, -4, 0, -1, -1, '\001', '\0', 'i', '\0', '\0'},
-   {0, {"xmax"}, XIDOID, 0, 4, -5, 0, -1, -1, '\0', '\0', 'i', '\0', '\0'},
+   {0, {"xmax"}, XIDOID, 0, 4, -5, 0, -1, -1, '\001', '\0', 'i', '\0', '\0'},
    {0, {"cmax"}, CIDOID, 0, 4, -6, 0, -1, -1, '\001', '\0', 'i', '\0', '\0'},
 };
 
index 0e88c86904f290925eee14a335f5d0da1ddf64c6..9c1d836408e22c6da1411379f40cb4a7bbdd95df 100644 (file)
@@ -7,7 +7,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: pg_attribute.h,v 1.38 1998/08/26 16:43:48 momjian Exp $
+ * $Id: pg_attribute.h,v 1.39 1998/08/26 17:12:11 momjian Exp $
  *
  * NOTES
  *   the genbki.sh script reads this file and generates .bki
@@ -213,9 +213,9 @@ DATA(insert OID = 0 ( 1247 typalign         18 0  1  15 0 -1 -1 t f c f f));
 DATA(insert OID = 0 ( 1247 typdefault      25 0 -1  16 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1247 ctid                27 0  6  -1 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1247 oid             26 0  4  -2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1247 xmin                28 0  4  -3 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1247 xmin                28 0  4  -3 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1247 cmin                29 0  4  -4 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1247 xmax                28 0  4  -5 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1247 xmax                28 0  4  -5 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1247 cmax                29 0  4  -6 0 -1 -1 t f i f f));
 
 /* ----------------
@@ -228,9 +228,9 @@ DATA(insert OID = 0 ( 1262 encoding         23 0  4   3 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1262 datpath         25 0 -1   4 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1262 ctid                27 0  6  -1 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1262 oid             26 0  4  -2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1262 xmin                28 0  4  -3 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1262 xmin                28 0  4  -3 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1262 cmin                29 0  4  -4 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1262 xmax                28 0  4  -5 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1262 xmax                28 0  4  -5 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1262 cmax                29 0  4  -6 0 -1 -1 t f i f f));
 
 /* ----------------
@@ -273,29 +273,29 @@ DATA(insert OID = 0 ( 1255 prosrc         25 0 -1  15 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1255 probin          17 0 -1  16 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1255 ctid                27 0  6  -1 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1255 oid             26 0  4  -2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1255 xmin                28 0  4  -3 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1255 xmin                28 0  4  -3 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1255 cmin                29 0  4  -4 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1255 xmax                28 0  4  -5 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1255 xmax                28 0  4  -5 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1255 cmax                29 0  4  -6 0 -1 -1 t f i f f));
 
 /* ----------------
  *     pg_shadow
  * ----------------
  */
-DATA(insert OID = 0 ( 1260 usename     19  0 NAMEDATALEN   1 0 -1 -1 f f d f f));
-DATA(insert OID = 0 ( 1260 usesysid        23  0   4   2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1260 usecreatedb 16  0   1   3 0 -1 -1 t f c f f));
-DATA(insert OID = 0 ( 1260 usetrace        16  0   1   4 0 -1 -1 t f c f f));
-DATA(insert OID = 0 ( 1260 usesuper        16  0   1   5 0 -1 -1 t f c f f));
-DATA(insert OID = 0 ( 1260 usecatupd   16  0   1   6 0 -1 -1 t f c f f));
-DATA(insert OID = 0 ( 1260 passwd      25  0  -1   7 0 -1 -1 f f i f f));
-DATA(insert OID = 0 ( 1260 valuntil        702 0   4   8 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1260 ctid            27 0  6  -1 0 -1 -1 f f i f f));
-DATA(insert OID = 0 ( 1260 oid         26 0  4  -2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1260 xmin            28 0  4  -3 0 -1 -1 f f i f f));
-DATA(insert OID = 0 ( 1260 cmin            29 0  4  -4 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1260 xmax            28 0  4  -5 0 -1 -1 f f i f f));
-DATA(insert OID = 0 ( 1260 cmax            29 0  4  -6 0 -1 -1 t f i f f));
+DATA(insert OID = 0 ( 1260 usename         19  0 NAMEDATALEN   1 0 -1 -1 f f d f f));
+DATA(insert OID = 0 ( 1260 usesysid            23  0   4   2 0 -1 -1 t f i f f));
+DATA(insert OID = 0 ( 1260 usecreatedb     16  0   1   3 0 -1 -1 t f c f f));
+DATA(insert OID = 0 ( 1260 usetrace            16  0   1   4 0 -1 -1 t f c f f));
+DATA(insert OID = 0 ( 1260 usesuper            16  0   1   5 0 -1 -1 t f c f f));
+DATA(insert OID = 0 ( 1260 usecatupd       16  0   1   6 0 -1 -1 t f c f f));
+DATA(insert OID = 0 ( 1260 passwd          25  0  -1   7 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1260 valuntil            702 0   4   8 0 -1 -1 t f i f f));
+DATA(insert OID = 0 ( 1260 ctid                27 0  6  -1 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1260 oid             26 0  4  -2 0 -1 -1 t f i f f));
+DATA(insert OID = 0 ( 1260 xmin                28 0  4  -3 0 -1 -1 t f i f f));
+DATA(insert OID = 0 ( 1260 cmin                29 0  4  -4 0 -1 -1 t f i f f));
+DATA(insert OID = 0 ( 1260 xmax                28 0  4  -5 0 -1 -1 t f i f f));
+DATA(insert OID = 0 ( 1260 cmax                29 0  4  -6 0 -1 -1 t f i f f));
 
 /* ----------------
  *     pg_group
@@ -306,9 +306,9 @@ DATA(insert OID = 0 ( 1261 grosysid         23 0  4   2 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1261 grolist       1007 0 -1   3 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1261 ctid                27 0  6  -1 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1261 oid             26 0  4  -2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1261 xmin                28 0  4  -3 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1261 xmin                28 0  4  -3 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1261 cmin                29 0  4  -4 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1261 xmax                28 0  4  -5 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1261 xmax                28 0  4  -5 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1261 cmax                29 0  4  -6 0 -1 -1 t f i f f));
 
 /* ----------------
@@ -347,9 +347,9 @@ DATA(insert OID = 0 ( 1249 attnotnull       16 0  1  13 0 -1 -1 t f c f f));
 DATA(insert OID = 0 ( 1249 atthasdef       16 0  1  14 0 -1 -1 t f c f f));
 DATA(insert OID = 0 ( 1249 ctid                27 0  6  -1 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1249 oid             26 0  4  -2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1249 xmin                28 0  4  -3 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1249 xmin                28 0  4  -3 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1249 cmin                29 0  4  -4 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1249 xmax                28 0  4  -5 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1249 xmax                28 0  4  -5 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1249 cmax                29 0  4  -6 0 -1 -1 t f i f f));
 
 /* ----------------
@@ -388,9 +388,9 @@ DATA(insert OID = 0 ( 1259 relhasrules      16 0  1  13 0 -1 -1 t f c f f));
 DATA(insert OID = 0 ( 1259 relacl        1034 0 -1  14 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1259 ctid                27 0  6  -1 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1259 oid             26 0  4  -2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1259 xmin                28 0  4  -3 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1259 xmin                28 0  4  -3 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1259 cmin                29 0  4  -4 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1259 xmax                28 0  4  -5 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1259 xmax                28 0  4  -5 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1259 cmax                29 0  4  -6 0 -1 -1 t f i f f));
 
 /* ----------------
@@ -403,9 +403,9 @@ DATA(insert OID = 0 ( 1215 adbin            25 0 -1   3 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1215 adsrc           25 0 -1   4 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1215 ctid                27 0  6  -1 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1215 oid             26 0  4  -2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1215 xmin                28 0  4  -3 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1215 xmin                28 0  4  -3 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1215 cmin                29 0  4  -4 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1215 xmax                28 0  4  -5 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1215 xmax                28 0  4  -5 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1215 cmax                29 0  4  -6 0 -1 -1 t f i f f));
 
 /* ----------------
@@ -418,9 +418,9 @@ DATA(insert OID = 0 ( 1216 rcbin            25 0 -1   3 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1216 rcsrc           25 0 -1   4 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1216 ctid                27 0  6  -1 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1216 oid             26 0  4  -2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1216 xmin                28 0  4  -3 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1216 xmin                28 0  4  -3 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1216 cmin                29 0  4  -4 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1216 xmax                28 0  4  -5 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1216 xmax                28 0  4  -5 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1216 cmax                29 0  4  -6 0 -1 -1 t f i f f));
 
 /* ----------------
@@ -436,9 +436,9 @@ DATA(insert OID = 0 ( 1219 tgattr           22 0 16   6 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1219 tgargs          17 0 -1   7 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1219 ctid                27 0  6  -1 0 -1 -1 f f i f f));
 DATA(insert OID = 0 ( 1219 oid             26 0  4  -2 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1219 xmin                28 0  4  -3 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1219 xmin                28 0  4  -3 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1219 cmin                29 0  4  -4 0 -1 -1 t f i f f));
-DATA(insert OID = 0 ( 1219 xmax                28 0  4  -5 0 -1 -1 f f i f f));
+DATA(insert OID = 0 ( 1219 xmax                28 0  4  -5 0 -1 -1 t f i f f));
 DATA(insert OID = 0 ( 1219 cmax                29 0  4  -6 0 -1 -1 t f i f f));
 
 /* ----------------
index 20264fb41a96832bb00c87772a671ea24f02a2c6..f671eef3c966a7ce6fcb28792da33f89b2e8f334 100644 (file)
@@ -15,3 +15,12 @@ WHERE    pg_class.oid = attrelid AND
    atttypid = pg_type.oid AND
    attalign != typalign;
 
+-- check alignment
+SELECT pg_attribute.oid, relname, attname
+FROM   pg_class, pg_attribute, pg_type
+WHERE  pg_class.oid = attrelid AND
+   atttypid = pg_type.oid AND
+   attbyval != typbyval;
+
+
+