summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
Diffstat (limited to 'src/include')
-rw-r--r--src/include/access/transam.h26
-rw-r--r--src/include/bootstrap/bootstrap.h4
-rw-r--r--src/include/catalog/catversion.h4
-rw-r--r--src/include/catalog/heap.h7
-rw-r--r--src/include/catalog/index.h7
-rw-r--r--src/include/catalog/indexing.h10
-rw-r--r--src/include/catalog/pg_amop.h358
-rw-r--r--src/include/catalog/pg_amproc.h112
-rw-r--r--src/include/catalog/pg_attrdef.h2
-rw-r--r--src/include/catalog/pg_attribute.h300
-rw-r--r--src/include/catalog/pg_class.h70
-rw-r--r--src/include/catalog/pg_description.h35
-rw-r--r--src/include/catalog/pg_group.h4
-rw-r--r--src/include/catalog/pg_index.h15
-rw-r--r--src/include/catalog/pg_inherits.h4
-rw-r--r--src/include/catalog/pg_largeobject.h7
-rw-r--r--src/include/catalog/pg_listener.h4
-rw-r--r--src/include/catalog/pg_log.h4
-rw-r--r--src/include/catalog/pg_proc.h15
-rw-r--r--src/include/catalog/pg_relcheck.h2
-rw-r--r--src/include/catalog/pg_shadow.h6
-rw-r--r--src/include/catalog/pg_statistic.h4
-rwxr-xr-xsrc/include/catalog/unused_oids15
-rw-r--r--src/include/commands/comment.h13
-rw-r--r--src/include/nodes/parsenodes.h5
-rw-r--r--src/include/parser/parse_relation.h3
-rw-r--r--src/include/postgres.h9
-rw-r--r--src/include/utils/syscache.h8
28 files changed, 555 insertions, 498 deletions
diff --git a/src/include/access/transam.h b/src/include/access/transam.h
index 5d328b3c71..9a872278ad 100644
--- a/src/include/access/transam.h
+++ b/src/include/access/transam.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: transam.h,v 1.36 2001/07/12 04:11:13 tgl Exp $
+ * $Id: transam.h,v 1.37 2001/08/10 18:57:39 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -63,11 +63,27 @@
typedef unsigned char XidStatus; /* (2 bits) */
/* ----------
- * We reserve the first 16384 object ids for manual assignment.
- * oid's less than this appear in the .bki files. the choice of
- * 16384 is completely arbitrary.
+ * Object ID (OID) zero is InvalidOid.
+ *
+ * OIDs 1-9999 are reserved for manual assignment (see the files
+ * in src/include/catalog/).
+ *
+ * OIDS 10000-16383 are reserved for assignment by genbki.sh.
+ *
+ * OIDs beginning at 16384 are assigned at runtime from the OID
+ * generator. (The first few of these will be assigned during initdb,
+ * to objects created after the initial BKI script processing.)
+ *
+ * The choices of 10000 and 16384 are completely arbitrary, and can be moved
+ * if we run low on OIDs in either category. Changing the macros below
+ * should be sufficient to do this.
+ *
+ * NOTE: if the OID generator wraps around, we should skip over OIDs 0-16383
+ * and resume with 16384. This minimizes the odds of OID conflict, by not
+ * reassigning OIDs that might have been assigned during initdb.
* ----------
*/
+#define FirstGenBKIObjectId 10000
#define BootstrapObjectIdData 16384
/*
@@ -111,7 +127,7 @@ extern void TransBlockNumberSetXidStatus(Relation relation,
/* in transam/varsup.c */
extern void GetNewTransactionId(TransactionId *xid);
extern void ReadNewTransactionId(TransactionId *xid);
-extern void GetNewObjectId(Oid *oid_return);
+extern Oid GetNewObjectId(void);
extern void CheckMaxObjectId(Oid assigned_oid);
/* ----------------
diff --git a/src/include/bootstrap/bootstrap.h b/src/include/bootstrap/bootstrap.h
index 5c3ebbcaae..25f3a23d87 100644
--- a/src/include/bootstrap/bootstrap.h
+++ b/src/include/bootstrap/bootstrap.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: bootstrap.h,v 1.22 2001/05/12 01:48:49 petere Exp $
+ * $Id: bootstrap.h,v 1.23 2001/08/10 18:57:39 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -47,7 +47,7 @@ extern void boot_openrel(char *name);
extern char *LexIDStr(int ident_num);
extern void DefineAttr(char *name, char *type, int attnum);
-extern void InsertOneValue(Oid objectid, char *value, int i);
+extern void InsertOneValue(char *value, int i);
extern void InsertOneNull(int i);
extern char *MapArrayTypeName(char *s);
extern char *CleanUpStr(char *s);
diff --git a/src/include/catalog/catversion.h b/src/include/catalog/catversion.h
index a4a132bc41..5827c15f77 100644
--- a/src/include/catalog/catversion.h
+++ b/src/include/catalog/catversion.h
@@ -37,7 +37,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: catversion.h,v 1.86 2001/07/15 22:48:18 tgl Exp $
+ * $Id: catversion.h,v 1.87 2001/08/10 18:57:39 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -53,6 +53,6 @@
*/
/* yyyymmddN */
-#define CATALOG_VERSION_NO 200107151
+#define CATALOG_VERSION_NO 200108101
#endif
diff --git a/src/include/catalog/heap.h b/src/include/catalog/heap.h
index 5488e794e9..2d08520bc9 100644
--- a/src/include/catalog/heap.h
+++ b/src/include/catalog/heap.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: heap.h,v 1.36 2001/05/30 12:57:36 momjian Exp $
+ * $Id: heap.h,v 1.37 2001/08/10 18:57:39 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -33,7 +33,7 @@ extern Relation heap_create(char *relname, TupleDesc tupDesc,
extern void heap_storage_create(Relation rel);
extern Oid heap_create_with_catalog(char *relname, TupleDesc tupdesc,
- char relkind, bool istemp,
+ char relkind, bool relhasoids, bool istemp,
bool allow_system_table_mods);
extern void heap_drop_with_catalog(const char *relname,
@@ -48,6 +48,7 @@ extern void AddRelationRawConstraints(Relation rel,
extern int RemoveCheckConstraint(Relation rel, const char *constrName, bool inh);
-extern Form_pg_attribute SystemAttributeDefinition(AttrNumber attno);
+extern Form_pg_attribute SystemAttributeDefinition(AttrNumber attno,
+ bool relhasoids);
#endif /* HEAP_H */
diff --git a/src/include/catalog/index.h b/src/include/catalog/index.h
index 0937cf9d92..08d61e2bb1 100644
--- a/src/include/catalog/index.h
+++ b/src/include/catalog/index.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: index.h,v 1.37 2001/07/16 05:06:59 tgl Exp $
+ * $Id: index.h,v 1.38 2001/08/10 18:57:39 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -34,7 +34,7 @@ extern void InitIndexStrategy(int numatts,
Relation indexRelation,
Oid accessMethodObjectId);
-extern void index_create(char *heapRelationName,
+extern Oid index_create(char *heapRelationName,
char *indexRelationName,
IndexInfo *indexInfo,
Oid accessMethodObjectId,
@@ -56,7 +56,8 @@ extern void FormIndexDatum(IndexInfo *indexInfo,
extern void UpdateStats(Oid relid, double reltuples);
extern bool IndexesAreActive(Oid relid, bool comfirmCommitted);
-extern void setRelhasindex(Oid relid, bool hasindex);
+extern void setRelhasindex(Oid relid, bool hasindex,
+ bool isprimary, Oid reltoastidxid);
extern void setNewRelfilenode(Relation relation);
diff --git a/src/include/catalog/indexing.h b/src/include/catalog/indexing.h
index 50e4d14a8f..004430096a 100644
--- a/src/include/catalog/indexing.h
+++ b/src/include/catalog/indexing.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: indexing.h,v 1.51 2001/06/16 18:59:31 tgl Exp $
+ * $Id: indexing.h,v 1.52 2001/08/10 18:57:39 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -20,7 +20,7 @@
/*
* Number of indices that exist for each system catalog
*/
-#define Num_pg_aggregate_indices 1
+#define Num_pg_aggregate_indices 2
#define Num_pg_am_indices 2
#define Num_pg_amop_indices 2
#define Num_pg_amproc_indices 1
@@ -51,6 +51,7 @@
#define AccessMethodStrategyIndex "pg_amop_strategy_index"
#define AccessProcedureIndex "pg_amproc_am_opcl_procnum_index"
#define AggregateNameTypeIndex "pg_aggregate_name_type_index"
+#define AggregateOidIndex "pg_aggregate_oid_index"
#define AmNameIndex "pg_am_name_index"
#define AmOidIndex "pg_am_oid_index"
#define AttrDefaultIndex "pg_attrdef_adrelid_adnum_index"
@@ -60,7 +61,7 @@
#define ClassOidIndex "pg_class_oid_index"
#define DatabaseNameIndex "pg_database_datname_index"
#define DatabaseOidIndex "pg_database_oid_index"
-#define DescriptionObjIndex "pg_description_objoid_index"
+#define DescriptionObjIndex "pg_description_o_c_o_index"
#define GroupNameIndex "pg_group_name_index"
#define GroupSysidIndex "pg_group_sysid_index"
#define IndexIndrelidIndex "pg_index_indrelid_index"
@@ -151,6 +152,7 @@ extern HeapTuple ClassOidIndexScan(Relation heapRelation, Datum relId);
*/
DECLARE_UNIQUE_INDEX(pg_aggregate_name_type_index on pg_aggregate using btree(aggname name_ops, aggbasetype oid_ops));
+DECLARE_UNIQUE_INDEX(pg_aggregate_oid_index on pg_aggregate using btree(oid oid_ops));
DECLARE_UNIQUE_INDEX(pg_am_name_index on pg_am using btree(amname name_ops));
DECLARE_UNIQUE_INDEX(pg_am_oid_index on pg_am using btree(oid oid_ops));
DECLARE_UNIQUE_INDEX(pg_amop_opid_index on pg_amop using btree(amopclaid oid_ops, amopopr oid_ops, amopid oid_ops));
@@ -163,7 +165,7 @@ DECLARE_UNIQUE_INDEX(pg_class_oid_index on pg_class using btree(oid oid_ops));
DECLARE_UNIQUE_INDEX(pg_class_relname_index on pg_class using btree(relname name_ops));
DECLARE_UNIQUE_INDEX(pg_database_datname_index on pg_database using btree(datname name_ops));
DECLARE_UNIQUE_INDEX(pg_database_oid_index on pg_database using btree(oid oid_ops));
-DECLARE_UNIQUE_INDEX(pg_description_objoid_index on pg_description using btree(objoid oid_ops));
+DECLARE_UNIQUE_INDEX(pg_description_o_c_o_index on pg_description using btree(objoid oid_ops, classoid oid_ops, objsubid int4_ops));
DECLARE_UNIQUE_INDEX(pg_group_name_index on pg_group using btree(groname name_ops));
DECLARE_UNIQUE_INDEX(pg_group_sysid_index on pg_group using btree(grosysid int4_ops));
/* This following index is not used for a cache and is not unique */
diff --git a/src/include/catalog/pg_amop.h b/src/include/catalog/pg_amop.h
index 055cbbe688..48f2c3bd83 100644
--- a/src/include/catalog/pg_amop.h
+++ b/src/include/catalog/pg_amop.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_amop.h,v 1.38 2001/03/22 04:00:37 momjian Exp $
+ * $Id: pg_amop.h,v 1.39 2001/08/10 18:57:39 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -31,7 +31,7 @@
* typedef struct FormData_pg_amop
* ----------------
*/
-CATALOG(pg_amop)
+CATALOG(pg_amop) BKI_WITHOUT_OIDS
{
Oid amopid; /* an index access method */
Oid amopclaid; /* an index opclass */
@@ -66,40 +66,40 @@ typedef FormData_pg_amop *Form_pg_amop;
* rtree box_ops
*/
-DATA(insert OID = 0 ( 402 422 493 1 ));
-DATA(insert OID = 0 ( 402 422 494 2 ));
-DATA(insert OID = 0 ( 402 422 500 3 ));
-DATA(insert OID = 0 ( 402 422 495 4 ));
-DATA(insert OID = 0 ( 402 422 496 5 ));
-DATA(insert OID = 0 ( 402 422 499 6 ));
-DATA(insert OID = 0 ( 402 422 498 7 ));
-DATA(insert OID = 0 ( 402 422 497 8 ));
+DATA(insert ( 402 422 493 1 ));
+DATA(insert ( 402 422 494 2 ));
+DATA(insert ( 402 422 500 3 ));
+DATA(insert ( 402 422 495 4 ));
+DATA(insert ( 402 422 496 5 ));
+DATA(insert ( 402 422 499 6 ));
+DATA(insert ( 402 422 498 7 ));
+DATA(insert ( 402 422 497 8 ));
/*
* rtree bigbox_ops
*/
-DATA(insert OID = 0 ( 402 433 493 1 ));
-DATA(insert OID = 0 ( 402 433 494 2 ));
-DATA(insert OID = 0 ( 402 433 500 3 ));
-DATA(insert OID = 0 ( 402 433 495 4 ));
-DATA(insert OID = 0 ( 402 433 496 5 ));
-DATA(insert OID = 0 ( 402 433 499 6 ));
-DATA(insert OID = 0 ( 402 433 498 7 ));
-DATA(insert OID = 0 ( 402 433 497 8 ));
+DATA(insert ( 402 433 493 1 ));
+DATA(insert ( 402 433 494 2 ));
+DATA(insert ( 402 433 500 3 ));
+DATA(insert ( 402 433 495 4 ));
+DATA(insert ( 402 433 496 5 ));
+DATA(insert ( 402 433 499 6 ));
+DATA(insert ( 402 433 498 7 ));
+DATA(insert ( 402 433 497 8 ));
/*
* rtree poly_ops (supports polygons)
*/
-DATA(insert OID = 0 ( 402 434 485 1 ));
-DATA(insert OID = 0 ( 402 434 486 2 ));
-DATA(insert OID = 0 ( 402 434 492 3 ));
-DATA(insert OID = 0 ( 402 434 487 4 ));
-DATA(insert OID = 0 ( 402 434 488 5 ));
-DATA(insert OID = 0 ( 402 434 491 6 ));
-DATA(insert OID = 0 ( 402 434 490 7 ));
-DATA(insert OID = 0 ( 402 434 489 8 ));
+DATA(insert ( 402 434 485 1 ));
+DATA(insert ( 402 434 486 2 ));
+DATA(insert ( 402 434 492 3 ));
+DATA(insert ( 402 434 487 4 ));
+DATA(insert ( 402 434 488 5 ));
+DATA(insert ( 402 434 491 6 ));
+DATA(insert ( 402 434 490 7 ));
+DATA(insert ( 402 434 489 8 ));
/*
* rtree circle_ops (supports circles)
@@ -110,264 +110,264 @@ DATA(insert OID = 0 ( 402 434 489 8 ));
* writes such functions.
*/
-/* DATA(insert OID = 0 ( 402 714 1506 1 )); */
-/* DATA(insert OID = 0 ( 402 714 1507 2 )); */
-/* DATA(insert OID = 0 ( 402 714 1513 3 )); */
-/* DATA(insert OID = 0 ( 402 714 1508 4 )); */
-/* DATA(insert OID = 0 ( 402 714 1509 5 )); */
-/* DATA(insert OID = 0 ( 402 714 1512 6 )); */
-/* DATA(insert OID = 0 ( 402 714 1511 7 )); */
-/* DATA(insert OID = 0 ( 402 714 1510 8 )); */
+/* DATA(insert ( 402 714 1506 1 )); */
+/* DATA(insert ( 402 714 1507 2 )); */
+/* DATA(insert ( 402 714 1513 3 )); */
+/* DATA(insert ( 402 714 1508 4 )); */
+/* DATA(insert ( 402 714 1509 5 )); */
+/* DATA(insert ( 402 714 1512 6 )); */
+/* DATA(insert ( 402 714 1511 7 )); */
+/* DATA(insert ( 402 714 1510 8 )); */
/*
* nbtree int2_ops
*/
-DATA(insert OID = 0 ( 403 421 95 1 ));
-DATA(insert OID = 0 ( 403 421 522 2 ));
-DATA(insert OID = 0 ( 403 421 94 3 ));
-DATA(insert OID = 0 ( 403 421 524 4 ));
-DATA(insert OID = 0 ( 403 421 520 5 ));
+DATA(insert ( 403 421 95 1 ));
+DATA(insert ( 403 421 522 2 ));
+DATA(insert ( 403 421 94 3 ));
+DATA(insert ( 403 421 524 4 ));
+DATA(insert ( 403 421 520 5 ));
/*
* nbtree float8_ops
*/
-DATA(insert OID = 0 ( 403 423 672 1 ));
-DATA(insert OID = 0 ( 403 423 673 2 ));
-DATA(insert OID = 0 ( 403 423 670 3 ));
-DATA(insert OID = 0 ( 403 423 675 4 ));
-DATA(insert OID = 0 ( 403 423 674 5 ));
+DATA(insert ( 403 423 672 1 ));
+DATA(insert ( 403 423 673 2 ));
+DATA(insert ( 403 423 670 3 ));
+DATA(insert ( 403 423 675 4 ));
+DATA(insert ( 403 423 674 5 ));
/*
* nbtree int4_ops
*/
-DATA(insert OID = 0 ( 403 426 97 1 ));
-DATA(insert OID = 0 ( 403 426 523 2 ));
-DATA(insert OID = 0 ( 403 426 96 3 ));
-DATA(insert OID = 0 ( 403 426 525 4 ));
-DATA(insert OID = 0 ( 403 426 521 5 ));
+DATA(insert ( 403 426 97 1 ));
+DATA(insert ( 403 426 523 2 ));
+DATA(insert ( 403 426 96 3 ));
+DATA(insert ( 403 426 525 4 ));
+DATA(insert ( 403 426 521 5 ));
/*
* nbtree int8_ops
*/
-DATA(insert OID = 0 ( 403 754 412 1 ));
-DATA(insert OID = 0 ( 403 754 414 2 ));
-DATA(insert OID = 0 ( 403 754 410 3 ));
-DATA(insert OID = 0 ( 403 754 415 4 ));
-DATA(insert OID = 0 ( 403 754 413 5 ));
+DATA(insert ( 403 754 412 1 ));
+DATA(insert ( 403 754 414 2 ));
+DATA(insert ( 403 754 410 3 ));
+DATA(insert ( 403 754 415 4 ));
+DATA(insert ( 403 754 413 5 ));
/*
* nbtree oid_ops
*/
-DATA(insert OID = 0 ( 403 427 609 1 ));
-DATA(insert OID = 0 ( 403 427 611 2 ));
-DATA(insert OID = 0 ( 403 427 607 3 ));
-DATA(insert OID = 0 ( 403 427 612 4 ));
-DATA(insert OID = 0 ( 403 427 610 5 ));
+DATA(insert ( 403 427 609 1 ));
+DATA(insert ( 403 427 611 2 ));
+DATA(insert ( 403 427 607 3 ));
+DATA(insert ( 403 427 612 4 ));
+DATA(insert ( 403 427 610 5 ));
/*
* nbtree oidvector_ops
*/
-DATA(insert OID = 0 ( 403 435 645 1 ));
-DATA(insert OID = 0 ( 403 435 647 2 ));
-DATA(insert OID = 0 ( 403 435 649 3 ));
-DATA(insert OID = 0 ( 403 435 648 4 ));
-DATA(insert OID = 0 ( 403 435 646 5 ));
+DATA(insert ( 403 435 645 1 ));
+DATA(insert ( 403 435 647 2 ));
+DATA(insert ( 403 435 649 3 ));
+DATA(insert ( 403 435 648 4 ));
+DATA(insert ( 403 435 646 5 ));
/*
* nbtree float4_ops
*/
-DATA(insert OID = 0 ( 403 428 622 1 ));
-DATA(insert OID = 0 ( 403 428 624 2 ));
-DATA(insert OID = 0 ( 403 428 620 3 ));
-DATA(insert OID = 0 ( 403 428 625 4 ));
-DATA(insert OID = 0 ( 403 428 623 5 ));
+DATA(insert ( 403 428 622 1 ));
+DATA(insert ( 403 428 624 2 ));
+DATA(insert ( 403 428 620 3 ));
+DATA(insert ( 403 428 625 4 ));
+DATA(insert ( 403 428 623 5 ));
/*
* nbtree char_ops
*/
-DATA(insert OID = 0 ( 403 429 631 1 ));
-DATA(insert OID = 0 ( 403 429 632 2 ));
-DATA(insert OID = 0 ( 403 429 92 3 ));
-DATA(insert OID = 0 ( 403 429 634 4 ));
-DATA(insert OID = 0 ( 403 429 633 5 ));
+DATA(insert ( 403 429 631 1 ));
+DATA(insert ( 403 429 632 2 ));
+DATA(insert ( 403 429 92 3 ));
+DATA(insert ( 403 429 634 4 ));
+DATA(insert ( 403 429 633 5 ));
/*
* nbtree name_ops
*/
-DATA(insert OID = 0 ( 403 1181 660 1 ));
-DATA(insert OID = 0 ( 403 1181 661 2 ));
-DATA(insert OID = 0 ( 403 1181 93 3 ));
-DATA(insert OID = 0 ( 403 1181 663 4 ));
-DATA(insert OID = 0 ( 403 1181 662 5 ));
+DATA(insert ( 403 1181 660 1 ));
+DATA(insert ( 403 1181 661 2 ));
+DATA(insert ( 403 1181 93 3 ));
+DATA(insert ( 403 1181 663 4 ));
+DATA(insert ( 403 1181 662 5 ));
/*
* nbtree text_ops
*/
-DATA(insert OID = 0 ( 403 431 664 1 ));
-DATA(insert OID = 0 ( 403 431 665 2 ));
-DATA(insert OID = 0 ( 403 431 98 3 ));
-DATA(insert OID = 0 ( 403 431 667 4 ));
-DATA(insert OID = 0 ( 403 431 666 5 ));
+DATA(insert ( 403 431 664 1 ));
+DATA(insert ( 403 431 665 2 ));
+DATA(insert ( 403 431 98 3 ));
+DATA(insert ( 403 431 667 4 ));
+DATA(insert ( 403 431 666 5 ));
/*
* nbtree abstime_ops
*/
-DATA(insert OID = 0 ( 403 432 562 1 ));
-DATA(insert OID = 0 ( 403 432 564 2 ));
-DATA(insert OID = 0 ( 403 432 560 3 ));
-DATA(insert OID = 0 ( 403 432 565 4 ));
-DATA(insert OID = 0 ( 403 432 563 5 ));
+DATA(insert ( 403 432 562 1 ));
+DATA(insert ( 403 432 564 2 ));
+DATA(insert ( 403 432 560 3 ));
+DATA(insert ( 403 432 565 4 ));
+DATA(insert ( 403 432 563 5 ));
/*
* nbtree bpchar_ops
*/
-DATA(insert OID = 0 ( 403 1076 1058 1 ));
-DATA(insert OID = 0 ( 403 1076 1059 2 ));
-DATA(insert OID = 0 ( 403 1076 1054 3 ));
-DATA(insert OID = 0 ( 403 1076 1061 4 ));
-DATA(insert OID = 0 ( 403 1076 1060 5 ));
+DATA(insert ( 403 1076 1058 1 ));
+DATA(insert ( 403 1076 1059 2 ));
+DATA(insert ( 403 1076 1054 3 ));
+DATA(insert ( 403 1076 1061 4 ));
+DATA(insert ( 403 1076 1060 5 ));
/*
* nbtree varchar_ops
*/
-DATA(insert OID = 0 ( 403 1077 1066 1 ));
-DATA(insert OID = 0 ( 403 1077 1067 2 ));
-DATA(insert OID = 0 ( 403 1077 1062 3 ));
-DATA(insert OID = 0 ( 403 1077 1069 4 ));
-DATA(insert OID = 0 ( 403 1077 1068 5 ));
+DATA(insert ( 403 1077 1066 1 ));
+DATA(insert ( 403 1077 1067 2 ));
+DATA(insert ( 403 1077 1062 3 ));
+DATA(insert ( 403 1077 1069 4 ));
+DATA(insert ( 403 1077 1068 5 ));
/*
* nbtree date_ops
*/
-DATA(insert OID = 0 ( 403 1114 1095 1 ));
-DATA(insert OID = 0 ( 403 1114 1096 2 ));
-DATA(insert OID = 0 ( 403 1114 1093 3 ));
-DATA(insert OID = 0 ( 403 1114 1098 4 ));
-DATA(insert OID = 0 ( 403 1114 1097 5 ));
+DATA(insert ( 403 1114 1095 1 ));
+DATA(insert ( 403 1114 1096 2 ));
+DATA(insert ( 403 1114 1093 3 ));
+DATA(insert ( 403 1114 1098 4 ));
+DATA(insert ( 403 1114 1097 5 ));
/*
* nbtree time_ops
*/
-DATA(insert OID = 0 ( 403 1115 1110 1 ));
-DATA(insert OID = 0 ( 403 1115 1111 2 ));
-DATA(insert OID = 0 ( 403 1115 1108 3 ));
-DATA(insert OID = 0 ( 403 1115 1113 4 ));
-DATA(insert OID = 0 ( 403 1115 1112 5 ));
+DATA(insert ( 403 1115 1110 1 ));
+DATA(insert ( 403 1115 1111 2 ));
+DATA(insert ( 403 1115 1108 3 ));
+DATA(insert ( 403 1115 1113 4 ));
+DATA(insert ( 403 1115 1112 5 ));
/*
* nbtree timetz_ops
*/
-DATA(insert OID = 0 ( 403 1399 1552 1 ));
-DATA(insert OID = 0 ( 403 1399 1553 2 ));
-DATA(insert OID = 0 ( 403 1399 1550 3 ));
-DATA(insert OID = 0 ( 403 1399 1555 4 ));
-DATA(insert OID = 0 ( 403 1399 1554 5 ));
+DATA(insert ( 403 1399 1552 1 ));
+DATA(insert ( 403 1399 1553 2 ));
+DATA(insert ( 403 1399 1550 3 ));
+DATA(insert ( 403 1399 1555 4 ));
+DATA(insert ( 403 1399 1554 5 ));
/*
* nbtree timestamp_ops
*/
-DATA(insert OID = 0 ( 403 1312 1322 1 ));
-DATA(insert OID = 0 ( 403 1312 1323 2 ));
-DATA(insert OID = 0 ( 403 1312 1320 3 ));
-DATA(insert OID = 0 ( 403 1312 1325 4 ));
-DATA(insert OID = 0 ( 403 1312 1324 5 ));
+DATA(insert ( 403 1312 1322 1 ));
+DATA(insert ( 403 1312 1323 2 ));
+DATA(insert ( 403 1312 1320 3 ));
+DATA(insert ( 403 1312 1325 4 ));
+DATA(insert ( 403 1312 1324 5 ));
/*
* nbtree interval_ops
*/
-DATA(insert OID = 0 ( 403 1313 1332 1 ));
-DATA(insert OID = 0 ( 403 1313 1333 2 ));
-DATA(insert OID = 0 ( 403 1313 1330 3 ));
-DATA(insert OID = 0 ( 403 1313 1335 4 ));
-DATA(insert OID = 0 ( 403 1313 1334 5 ));
+DATA(insert ( 403 1313 1332 1 ));
+DATA(insert ( 403 1313 1333 2 ));
+DATA(insert ( 403 1313 1330 3 ));
+DATA(insert ( 403 1313 1335 4 ));
+DATA(insert ( 403 1313 1334 5 ));
/*
* nbtree macaddr
*/
-DATA(insert OID = 0 ( 403 810 1222 1 ));
-DATA(insert OID = 0 ( 403 810 1223 2 ));
-DATA(insert OID = 0 ( 403 810 1220 3 ));
-DATA(insert OID = 0 ( 403 810 1225 4 ));
-DATA(insert OID = 0 ( 403 810 1224 5 ));
+DATA(insert ( 403 810 1222 1 ));
+DATA(insert ( 403 810 1223 2 ));
+DATA(insert ( 403 810 1220 3 ));
+DATA(insert ( 403 810 1225 4 ));
+DATA(insert ( 403 810 1224 5 ));
/*
* nbtree inet
*/
-DATA(insert OID = 0 ( 403 935 1203 1 ));
-DATA(insert OID = 0 ( 403 935 1204 2 ));
-DATA(insert OID = 0 ( 403 935 1201 3 ));
-DATA(insert OID = 0 ( 403 935 1206 4 ));
-DATA(insert OID = 0 ( 403 935 1205 5 ));
+DATA(insert ( 403 935 1203 1 ));
+DATA(insert ( 403 935 1204 2 ));
+DATA(insert ( 403 935 1201 3 ));
+DATA(insert ( 403 935 1206 4 ));
+DATA(insert ( 403 935 1205 5 ));
/*
* nbtree cidr
*/
-DATA(insert OID = 0 ( 403 652 822 1 ));
-DATA(insert OID = 0 ( 403 652 823 2 ));
-DATA(insert OID = 0 ( 403 652 820 3 ));
-DATA(insert OID = 0 ( 403 652 825 4 ));
-DATA(insert OID = 0 ( 403 652 824 5 ));
+DATA(insert ( 403 652 822 1 ));
+DATA(insert ( 403 652 823 2 ));
+DATA(insert ( 403 652 820 3 ));
+DATA(insert ( 403 652 825 4 ));
+DATA(insert ( 403 652 824 5 ));
/*
* nbtree numeric
*/
-DATA(insert OID = 0 ( 403 1768 1754 1 ));
-DATA(insert OID = 0 ( 403 1768 1755 2 ));
-DATA(insert OID = 0 ( 403 1768 1752 3 ));
-DATA(insert OID = 0 ( 403 1768 1757 4 ));
-DATA(insert OID = 0 ( 403 1768 1756 5 ));
+DATA(insert ( 403 1768 1754 1 ));
+DATA(insert ( 403 1768 1755 2 ));
+DATA(insert ( 403 1768 1752 3 ));
+DATA(insert ( 403 1768 1757 4 ));
+DATA(insert ( 403 1768 1756 5 ));
/*
* nbtree bool
*/
-DATA(insert OID = 0 ( 403 1690 58 1 ));
-DATA(insert OID = 0 ( 403 1690 1694 2 ));
-DATA(insert OID = 0 ( 403 1690 91 3 ));
-DATA(insert OID = 0 ( 403 1690 1695 4 ));
-DATA(insert OID = 0 ( 403 1690 59 5 ));
+DATA(insert ( 403 1690 58 1 ));
+DATA(insert ( 403 1690 1694 2 ));
+DATA(insert ( 403 1690 91 3 ));
+DATA(insert ( 403 1690 1695 4 ));
+DATA(insert ( 403 1690 59 5 ));
/*
* nbtree bit
*/
-DATA(insert OID = 0 ( 403 424 1786 1 ));
-DATA(insert OID = 0 ( 403 424 1788 2 ));
-DATA(insert OID = 0 ( 403 424 1784 3 ));
-DATA(insert OID = 0 ( 403 424 1789 4 ));
-DATA(insert OID = 0 ( 403 424 1787 5 ));
+DATA(insert ( 403 424 1786 1 ));
+DATA(insert ( 403 424 1788 2 ));
+DATA(insert ( 403 424 1784 3 ));
+DATA(insert ( 403 424 1789 4 ));
+DATA(insert ( 403 424 1787 5 ));
/*
* nbtree varbit
*/
-DATA(insert OID = 0 ( 403 425 1806 1 ));
-DATA(insert OID = 0 ( 403 425 1808 2 ));
-DATA(insert OID = 0 ( 403 425 1804 3 ));
-DATA(insert OID = 0 ( 403 425 1809 4 ));
-DATA(insert OID = 0 ( 403 425 1807 5 ));
+DATA(insert ( 403 425 1806 1 ));
+DATA(insert ( 403 425 1808 2 ));
+DATA(insert ( 403 425 1804 3 ));
+DATA(insert ( 403 425 1809 4 ));
+DATA(insert ( 403 425 1807 5 ));
/*
@@ -375,44 +375,44 @@ DATA(insert OID = 0 ( 403 425 1807 5 ));
*/
/* int2_ops */
-DATA(insert OID = 0 ( 405 421 94 1 ));
+DATA(insert ( 405 421 94 1 ));
/* float8_ops */
-DATA(insert OID = 0 ( 405 423 670 1 ));
+DATA(insert ( 405 423 670 1 ));
/* int4_ops */
-DATA(insert OID = 0 ( 405 426 96 1 ));
+DATA(insert ( 405 426 96 1 ));
/* int8_ops */
-DATA(insert OID = 0 ( 405 754 410 1 ));
+DATA(insert ( 405 754 410 1 ));
/* oid_ops */
-DATA(insert OID = 0 ( 405 427 607 1 ));
+DATA(insert ( 405 427 607 1 ));
/* oidvector_ops */
-DATA(insert OID = 0 ( 405 435 649 1 ));
+DATA(insert ( 405 435 649 1 ));
/* float4_ops */
-DATA(insert OID = 0 ( 405 428 620 1 ));
+DATA(insert ( 405 428 620 1 ));
/* char_ops */
-DATA(insert OID = 0 ( 405 429 92 1 ));
+DATA(insert ( 405 429 92 1 ));
/* name_ops */
-DATA(insert OID = 0 ( 405 1181 93 1 ));
+DATA(insert ( 405 1181 93 1 ));
/* text_ops */
-DATA(insert OID = 0 ( 405 431 98 1 ));
+DATA(insert ( 405 431 98 1 ));
/* bpchar_ops */
-DATA(insert OID = 0 ( 405 1076 1054 1 ));
+DATA(insert ( 405 1076 1054 1 ));
/* varchar_ops */
-DATA(insert OID = 0 ( 405 1077 1062 1 ));
+DATA(insert ( 405 1077 1062 1 ));
/* date_ops */
-DATA(insert OID = 0 ( 405 1114 1093 1 ));
+DATA(insert ( 405 1114 1093 1 ));
/* time_ops */
-DATA(insert OID = 0 ( 405 1115 1108 1 ));
+DATA(insert ( 405 1115 1108 1 ));
/* timetz_ops */
-DATA(insert OID = 0 ( 405 1399 1550 1 ));
+DATA(insert ( 405 1399 1550 1 ));
/* timestamp_ops */
-DATA(insert OID = 0 ( 405 1312 1320 1 ));
+DATA(insert ( 405 1312 1320 1 ));
/* interval_ops */
-DATA(insert OID = 0 ( 405 1313 1330 1 ));
+DATA(insert ( 405 1313 1330 1 ));
/* macaddr_ops */
-DATA(insert OID = 0 ( 405 810 1220 1 ));
+DATA(insert ( 405 810 1220 1 ));
/* inet_ops */
-DATA(insert OID = 0 ( 405 935 1201 1 ));
+DATA(insert ( 405 935 1201 1 ));
/* cidr_ops */
-DATA(insert OID = 0 ( 405 652 820 1 ));
+DATA(insert ( 405 652 820 1 ));
#endif /* PG_AMOP_H */
diff --git a/src/include/catalog/pg_amproc.h b/src/include/catalog/pg_amproc.h
index abfc4857e4..a8aadd4518 100644
--- a/src/include/catalog/pg_amproc.h
+++ b/src/include/catalog/pg_amproc.h
@@ -10,7 +10,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_amproc.h,v 1.27 2001/01/24 19:43:20 momjian Exp $
+ * $Id: pg_amproc.h,v 1.28 2001/08/10 18:57:39 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -33,7 +33,7 @@
* typedef struct FormData_pg_amproc
* ----------------
*/
-CATALOG(pg_amproc)
+CATALOG(pg_amproc) BKI_WITHOUT_OIDS
{
Oid amid; /* the access method this proc is for */
Oid amopclaid; /* the opclass this proc is for */
@@ -64,65 +64,65 @@ typedef FormData_pg_amproc *Form_pg_amproc;
*/
/* rtree */
-DATA(insert OID = 0 (402 422 193 1));
-DATA(insert OID = 0 (402 422 194 2));
-DATA(insert OID = 0 (402 422 195 3));
-DATA(insert OID = 0 (402 433 193 1));
-DATA(insert OID = 0 (402 433 194 2));
-DATA(insert OID = 0 (402 433 196 3));
-DATA(insert OID = 0 (402 434 197 1));
-DATA(insert OID = 0 (402 434 198 2));
-DATA(insert OID = 0 (402 434 199 3));
+DATA(insert (402 422 193 1));
+DATA(insert (402 422 194 2));
+DATA(insert (402 422 195 3));
+DATA(insert (402 433 193 1));
+DATA(insert (402 433 194 2));
+DATA(insert (402 433 196 3));
+DATA(insert (402 434 197 1));
+DATA(insert (402 434 198 2));
+DATA(insert (402 434 199 3));
/* btree */
-DATA(insert OID = 0 (403 421 350 1));
-DATA(insert OID = 0 (403 423 355 1));
-DATA(insert OID = 0 (403 426 351 1));
-DATA(insert OID = 0 (403 427 356 1));
-DATA(insert OID = 0 (403 428 354 1));
-DATA(insert OID = 0 (403 429 358 1));
-DATA(insert OID = 0 (403 431 360 1));
-DATA(insert OID = 0 (403 432 357 1));
-DATA(insert OID = 0 (403 435 404 1));
-DATA(insert OID = 0 (403 754 842 1));
-DATA(insert OID = 0 (403 1076 1078 1));
-DATA(insert OID = 0 (403 1077 1079 1));
-DATA(insert OID = 0 (403 1114 1092 1));
-DATA(insert OID = 0 (403 1115 1107 1));
-DATA(insert OID = 0 (403 1181 359 1));
-DATA(insert OID = 0 (403 1312 1314 1));
-DATA(insert OID = 0 (403 1313 1315 1));
-DATA(insert OID = 0 (403 810 836 1));
-DATA(insert OID = 0 (403 935 926 1));
-DATA(insert OID = 0 (403 652 926 1));
-DATA(insert OID = 0 (403 1768 1769 1));
-DATA(insert OID = 0 (403 1690 1693 1));
-DATA(insert OID = 0 (403 1399 1358 1));
-DATA(insert OID = 0 (403 424 1596 1));
-DATA(insert OID = 0 (403 425 1672 1));
+DATA(insert (403 421 350 1));
+DATA(insert (403 423 355 1));
+DATA(insert (403 426 351 1));
+DATA(insert (403 427 356 1));
+DATA(insert (403 428 354 1));
+DATA(insert (403 429 358 1));
+DATA(insert (403 431 360 1));
+DATA(insert (403 432 357 1));
+DATA(insert (403 435 404 1));
+DATA(insert (403 754 842 1));
+DATA(insert (403 1076 1078 1));
+DATA(insert (403 1077 1079 1));
+DATA(insert (403 1114 1092 1));
+DATA(insert (403 1115 1107 1));
+DATA(insert (403 1181 359 1));
+DATA(insert (403 1312 1314 1));
+DATA(insert (403 1313 1315 1));
+DATA(insert (403 810 836 1));
+DATA(insert (403 935 926 1));
+DATA(insert (403 652 926 1));
+DATA(insert (403 1768 1769 1));
+DATA(insert (403 1690 1693 1));
+DATA(insert (403 1399 1358 1));
+DATA(insert (403 424 1596 1));
+DATA(insert (403 425 1672 1));
/* hash */
-DATA(insert OID = 0 (405 421 449 1));
-DATA(insert OID = 0 (405 423 452 1));
-DATA(insert OID = 0 (405 426 450 1));
-DATA(insert OID = 0 (405 427 453 1));
-DATA(insert OID = 0 (405 428 451 1));
-DATA(insert OID = 0 (405 429 454 1));
-DATA(insert OID = 0 (405 431 456 1));
-DATA(insert OID = 0 (405 435 457 1));
-DATA(insert OID = 0 (405 652 456 1));
-DATA(insert OID = 0 (405 754 949 1));
-DATA(insert OID = 0 (405 810 399 1));
-DATA(insert OID = 0 (405 935 456 1));
-DATA(insert OID = 0 (405 1076 1080 1));
-DATA(insert OID = 0 (405 1077 456 1));
-DATA(insert OID = 0 (405 1114 450 1));
-DATA(insert OID = 0 (405 1115 452 1));
-DATA(insert OID = 0 (405 1181 455 1));
-DATA(insert OID = 0 (405 1312 452 1));
-DATA(insert OID = 0 (405 1313 1697 1));
-DATA(insert OID = 0 (405 1399 1696 1));
+DATA(insert (405 421 449 1));
+DATA(insert (405 423 452 1));
+DATA(insert (405 426 450 1));
+DATA(insert (405 427 453 1));
+DATA(insert (405 428 451 1));
+DATA(insert (405 429 454 1));
+DATA(insert (405 431 456 1));
+DATA(insert (405 435 457 1));
+DATA(insert (405 652 456 1));
+DATA(insert (405 754 949 1));
+DATA(insert (405 810 399 1));
+DATA(insert (405 935 456 1));
+DATA(insert (405 1076 1080 1));
+DATA(insert (405 1077 456 1));
+DATA(insert (405 1114 450 1));
+DATA(insert (405 1115 452 1));
+DATA(insert (405 1181 455 1));
+DATA(insert (405 1312 452 1));
+DATA(insert (405 1313 1697 1));
+DATA(insert (405 1399 1696 1));
#endif /* PG_AMPROC_H */
diff --git a/src/include/catalog/pg_attrdef.h b/src/include/catalog/pg_attrdef.h
index 713776375c..55efc26966 100644
--- a/src/include/catalog/pg_attrdef.h
+++ b/src/include/catalog/pg_attrdef.h
@@ -27,7 +27,7 @@
* typedef struct FormData_pg_attrdef
* ----------------
*/
-CATALOG(pg_attrdef)
+CATALOG(pg_attrdef) BKI_WITHOUT_OIDS
{
Oid adrelid;
int2 adnum;
diff --git a/src/include/catalog/pg_attribute.h b/src/include/catalog/pg_attribute.h
index 95bd2569f4..ad8dc3a6e5 100644
--- a/src/include/catalog/pg_attribute.h
+++ b/src/include/catalog/pg_attribute.h
@@ -8,14 +8,14 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_attribute.h,v 1.73 2001/06/12 05:55:50 tgl Exp $
+ * $Id: pg_attribute.h,v 1.74 2001/08/10 18:57:40 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
* information from the DATA() statements.
*
- * utils/cache/relcache.c requires some hard-coded tuple descriptors
- * for some of the system catalogs so if the schema for any of
+ * utils/cache/relcache.c requires hard-coded tuple descriptors
+ * for some of the system catalogs. So if the schema for any of
* these changes, be sure and change the appropriate Schema_xxx
* macros! -cim 2/5/91
*
@@ -39,7 +39,7 @@
* system attributes in catalog/heap.c also.
* ----------------
*/
-CATALOG(pg_attribute) BOOTSTRAP
+CATALOG(pg_attribute) BOOTSTRAP BKI_WITHOUT_OIDS
{
Oid attrelid; /* OID of relation containing this
* attribute */
@@ -241,50 +241,50 @@ typedef FormData_pg_attribute *Form_pg_attribute;
{ 1247, {"typstorage"}, 18, 0, 1, 16, 0, -1, -1, true, 'p', false, 'c', false, false }, \
{ 1247, {"typdefault"}, 25, 0, -1, 17, 0, -1, -1, false , 'x', false, 'i', false, false }
-DATA(insert OID = 0 ( 1247 typname 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1247 typowner 23 0 4 2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 typlen 21 0 2 3 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1247 typprtlen 21 0 2 4 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1247 typbyval 16 0 1 5 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1247 typtype 18 0 1 6 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1247 typisdefined 16 0 1 7 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1247 typdelim 18 0 1 8 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1247 typrelid 26 0 4 9 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 typelem 26 0 4 10 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 typinput 24 0 4 11 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 typoutput 24 0 4 12 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 typreceive 24 0 4 13 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 typsend 24 0 4 14 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 typalign 18 0 1 15 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1247 typstorage 18 0 1 16 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1247 typdefault 25 0 -1 17 0 -1 -1 f x f i f f));
-DATA(insert OID = 0 ( 1247 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1247 oid 26 0 4 -2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1247 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 typname 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 1 0 -1 -1 f p f i f f));
+DATA(insert ( 1247 typowner 23 0 4 2 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 typlen 21 0 2 3 0 -1 -1 t p f s f f));
+DATA(insert ( 1247 typprtlen 21 0 2 4 0 -1 -1 t p f s f f));
+DATA(insert ( 1247 typbyval 16 0 1 5 0 -1 -1 t p f c f f));
+DATA(insert ( 1247 typtype 18 0 1 6 0 -1 -1 t p f c f f));
+DATA(insert ( 1247 typisdefined 16 0 1 7 0 -1 -1 t p f c f f));
+DATA(insert ( 1247 typdelim 18 0 1 8 0 -1 -1 t p f c f f));
+DATA(insert ( 1247 typrelid 26 0 4 9 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 typelem 26 0 4 10 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 typinput 24 0 4 11 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 typoutput 24 0 4 12 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 typreceive 24 0 4 13 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 typsend 24 0 4 14 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 typalign 18 0 1 15 0 -1 -1 t p f c f f));
+DATA(insert ( 1247 typstorage 18 0 1 16 0 -1 -1 t p f c f f));
+DATA(insert ( 1247 typdefault 25 0 -1 17 0 -1 -1 f x f i f f));
+DATA(insert ( 1247 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
+DATA(insert ( 1247 oid 26 0 4 -2 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
+DATA(insert ( 1247 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
/* ----------------
* pg_database
* ----------------
*/
-DATA(insert OID = 0 ( 1262 datname 19 0 NAMEDATALEN 1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1262 datdba 23 0 4 2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1262 encoding 23 0 4 3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1262 datistemplate 16 0 1 4 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1262 datallowconn 16 0 1 5 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1262 datlastsysoid 26 0 4 6 0 -1 -1 t p f i f f));
+DATA(insert ( 1262 datname 19 0 NAMEDATALEN 1 0 -1 -1 f p f i f f));
+DATA(insert ( 1262 datdba 23 0 4 2 0 -1 -1 t p f i f f));
+DATA(insert ( 1262 encoding 23 0 4 3 0 -1 -1 t p f i f f));
+DATA(insert ( 1262 datistemplate 16 0 1 4 0 -1 -1 t p f c f f));
+DATA(insert ( 1262 datallowconn 16 0 1 5 0 -1 -1 t p f c f f));
+DATA(insert ( 1262 datlastsysoid 26 0 4 6 0 -1 -1 t p f i f f));
/* do not mark datpath as toastable; GetRawDatabaseInfo won't cope */
-DATA(insert OID = 0 ( 1262 datpath 25 0 -1 7 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1262 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1262 oid 26 0 4 -2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1262 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1262 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1262 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1262 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1262 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
+DATA(insert ( 1262 datpath 25 0 -1 7 0 -1 -1 f p f i f f));
+DATA(insert ( 1262 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
+DATA(insert ( 1262 oid 26 0 4 -2 0 -1 -1 t p f i f f));
+DATA(insert ( 1262 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
+DATA(insert ( 1262 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
+DATA(insert ( 1262 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
+DATA(insert ( 1262 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
+DATA(insert ( 1262 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
/* ----------------
* pg_proc
@@ -309,65 +309,65 @@ DATA(insert OID = 0 ( 1262 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
{ 1255, {"prosrc"}, 25, 0, -1, 16, 0, -1, -1, false, 'x', false, 'i', false, false }, \
{ 1255, {"probin"}, 17, 0, -1, 17, 0, -1, -1, false, 'x', false, 'i', false, false }
-DATA(insert OID = 0 ( 1255 proname 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1255 proowner 23 0 4 2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 prolang 26 0 4 3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 proisinh 16 0 1 4 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1255 proistrusted 16 0 1 5 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1255 proiscachable 16 0 1 6 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1255 proisstrict 16 0 1 7 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1255 pronargs 21 0 2 8 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1255 proretset 16 0 1 9 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1255 prorettype 26 0 4 10 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 proargtypes 30 0 INDEX_MAX_KEYS*4 11 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1255 probyte_pct 23 0 4 12 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 properbyte_cpu 23 0 4 13 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 propercall_cpu 23 0 4 14 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 prooutin_ratio 23 0 4 15 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 prosrc 25 0 -1 16 0 -1 -1 f x f i f f));
-DATA(insert OID = 0 ( 1255 probin 17 0 -1 17 0 -1 -1 f x f i f f));
-DATA(insert OID = 0 ( 1255 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1255 oid 26 0 4 -2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1255 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 proname 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 1 0 -1 -1 f p f i f f));
+DATA(insert ( 1255 proowner 23 0 4 2 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 prolang 26 0 4 3 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 proisinh 16 0 1 4 0 -1 -1 t p f c f f));
+DATA(insert ( 1255 proistrusted 16 0 1 5 0 -1 -1 t p f c f f));
+DATA(insert ( 1255 proiscachable 16 0 1 6 0 -1 -1 t p f c f f));
+DATA(insert ( 1255 proisstrict 16 0 1 7 0 -1 -1 t p f c f f));
+DATA(insert ( 1255 pronargs 21 0 2 8 0 -1 -1 t p f s f f));
+DATA(insert ( 1255 proretset 16 0 1 9 0 -1 -1 t p f c f f));
+DATA(insert ( 1255 prorettype 26 0 4 10 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 proargtypes 30 0 INDEX_MAX_KEYS*4 11 0 -1 -1 f p f i f f));
+DATA(insert ( 1255 probyte_pct 23 0 4 12 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 properbyte_cpu 23 0 4 13 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 propercall_cpu 23 0 4 14 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 prooutin_ratio 23 0 4 15 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 prosrc 25 0 -1 16 0 -1 -1 f x f i f f));
+DATA(insert ( 1255 probin 17 0 -1 17 0 -1 -1 f x f i f f));
+DATA(insert ( 1255 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
+DATA(insert ( 1255 oid 26 0 4 -2 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
+DATA(insert ( 1255 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
/* ----------------
* pg_shadow
* ----------------
*/
-DATA(insert OID = 0 ( 1260 usename 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1260 usesysid 23 DEFAULT_ATTSTATTARGET 4 2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1260 usecreatedb 16 0 1 3 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1260 usetrace 16 0 1 4 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1260 usesuper 16 0 1 5 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1260 usecatupd 16 0 1 6 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1260 passwd 25 0 -1 7 0 -1 -1 f x f i f f));
-DATA(insert OID = 0 ( 1260 valuntil 702 0 4 8 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1260 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1260 oid 26 0 4 -2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1260 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1260 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1260 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1260 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1260 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
+DATA(insert ( 1260 usename 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 1 0 -1 -1 f p f i f f));
+DATA(insert ( 1260 usesysid 23 DEFAULT_ATTSTATTARGET 4 2 0 -1 -1 t p f i f f));
+DATA(insert ( 1260 usecreatedb 16 0 1 3 0 -1 -1 t p f c f f));
+DATA(insert ( 1260 usetrace 16 0 1 4 0 -1 -1 t p f c f f));
+DATA(insert ( 1260 usesuper 16 0 1 5 0 -1 -1 t p f c f f));
+DATA(insert ( 1260 usecatupd 16 0 1 6 0 -1 -1 t p f c f f));
+DATA(insert ( 1260 passwd 25 0 -1 7 0 -1 -1 f x f i f f));
+DATA(insert ( 1260 valuntil 702 0 4 8 0 -1 -1 t p f i f f));
+DATA(insert ( 1260 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
+/* no OIDs in pg_shadow */
+DATA(insert ( 1260 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
+DATA(insert ( 1260 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
+DATA(insert ( 1260 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
+DATA(insert ( 1260 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
+DATA(insert ( 1260 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
/* ----------------
* pg_group
* ----------------
*/
-DATA(insert OID = 0 ( 1261 groname 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1261 grosysid 23 DEFAULT_ATTSTATTARGET 4 2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1261 grolist 1007 0 -1 3 0 -1 -1 f x f i f f));
-DATA(insert OID = 0 ( 1261 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1261 oid 26 0 4 -2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1261 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1261 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1261 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1261 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1261 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
+DATA(insert ( 1261 groname 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 1 0 -1 -1 f p f i f f));
+DATA(insert ( 1261 grosysid 23 DEFAULT_ATTSTATTARGET 4 2 0 -1 -1 t p f i f f));
+DATA(insert ( 1261 grolist 1007 0 -1 3 0 -1 -1 f x f i f f));
+DATA(insert ( 1261 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
+/* no OIDs in pg_group */
+DATA(insert ( 1261 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
+DATA(insert ( 1261 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
+DATA(insert ( 1261 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
+DATA(insert ( 1261 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
+DATA(insert ( 1261 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
/* ----------------
* pg_attribute
@@ -390,28 +390,28 @@ DATA(insert OID = 0 ( 1261 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
{ 1249, {"attnotnull"}, 16, 0, 1, 14, 0, -1, -1, true, 'p', false, 'c', false, false }, \
{ 1249, {"atthasdef"}, 16, 0, 1, 15, 0, -1, -1, true, 'p', false, 'c', false, false }
-DATA(insert OID = 0 ( 1249 attrelid 26 DEFAULT_ATTSTATTARGET 4 1 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 attname 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 2 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1249 atttypid 26 0 4 3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 attstattarget 23 0 4 4 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 attlen 21 0 2 5 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1249 attnum 21 0 2 6 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1249 attndims 23 0 4 7 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 attcacheoff 23 0 4 8 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 atttypmod 23 0 4 9 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 attbyval 16 0 1 10 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1249 attstorage 18 0 1 11 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1249 attisset 16 0 1 12 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1249 attalign 18 0 1 13 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1249 attnotnull 16 0 1 14 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1249 atthasdef 16 0 1 15 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1249 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1249 oid 26 0 4 -2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1249 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 attrelid 26 DEFAULT_ATTSTATTARGET 4 1 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 attname 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 2 0 -1 -1 f p f i f f));
+DATA(insert ( 1249 atttypid 26 0 4 3 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 attstattarget 23 0 4 4 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 attlen 21 0 2 5 0 -1 -1 t p f s f f));
+DATA(insert ( 1249 attnum 21 0 2 6 0 -1 -1 t p f s f f));
+DATA(insert ( 1249 attndims 23 0 4 7 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 attcacheoff 23 0 4 8 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 atttypmod 23 0 4 9 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 attbyval 16 0 1 10 0 -1 -1 t p f c f f));
+DATA(insert ( 1249 attstorage 18 0 1 11 0 -1 -1 t p f c f f));
+DATA(insert ( 1249 attisset 16 0 1 12 0 -1 -1 t p f c f f));
+DATA(insert ( 1249 attalign 18 0 1 13 0 -1 -1 t p f c f f));
+DATA(insert ( 1249 attnotnull 16 0 1 14 0 -1 -1 t p f c f f));
+DATA(insert ( 1249 atthasdef 16 0 1 15 0 -1 -1 t p f c f f));
+DATA(insert ( 1249 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
+/* no OIDs in pg_attribute */
+DATA(insert ( 1249 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
+DATA(insert ( 1249 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
/* ----------------
* pg_class
@@ -436,40 +436,42 @@ DATA(insert OID = 0 ( 1249 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
{ 1259, {"relukeys"}, 21, 0, 2, 16, 0, -1, -1, true, 'p', false, 's', false, false }, \
{ 1259, {"relfkeys"}, 21, 0, 2, 17, 0, -1, -1, true, 'p', false, 's', false, false }, \
{ 1259, {"relrefs"}, 21, 0, 2, 18, 0, -1, -1, true, 'p', false, 's', false, false }, \
-{ 1259, {"relhaspkey"}, 16, 0, 1, 19, 0, -1, -1, true, 'p', false, 'c', false, false }, \
-{ 1259, {"relhasrules"}, 16, 0, 1, 20, 0, -1, -1, true, 'p', false, 'c', false, false }, \
-{ 1259, {"relhassubclass"},16, 0, 1, 21, 0, -1, -1, true, 'p', false, 'c', false, false }, \
-{ 1259, {"relacl"}, 1034, 0, -1, 22, 0, -1, -1, false, 'x', false, 'i', false, false }
-
-DATA(insert OID = 0 ( 1259 relname 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1259 reltype 26 0 4 2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 relowner 23 0 4 3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 relam 26 0 4 4 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 relfilenode 26 0 4 5 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 relpages 23 0 4 6 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 reltuples 700 0 4 7 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1259 reltoastrelid 26 0 4 8 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 reltoastidxid 26 0 4 9 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 relhasindex 16 0 1 10 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1259 relisshared 16 0 1 11 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1259 relkind 18 0 1 12 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1259 relnatts 21 0 2 13 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1259 relchecks 21 0 2 14 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1259 reltriggers 21 0 2 15 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1259 relukeys 21 0 2 16 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1259 relfkeys 21 0 2 17 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1259 relrefs 21 0 2 18 0 -1 -1 t p f s f f));
-DATA(insert OID = 0 ( 1259 relhaspkey 16 0 1 19 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1259 relhasrules 16 0 1 20 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1259 relhassubclass 16 0 1 21 0 -1 -1 t p f c f f));
-DATA(insert OID = 0 ( 1259 relacl 1034 0 -1 22 0 -1 -1 f x f i f f));
-DATA(insert OID = 0 ( 1259 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
-DATA(insert OID = 0 ( 1259 oid 26 0 4 -2 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
-DATA(insert OID = 0 ( 1259 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
+{ 1259, {"relhasoids"}, 16, 0, 1, 19, 0, -1, -1, true, 'p', false, 'c', false, false }, \
+{ 1259, {"relhaspkey"}, 16, 0, 1, 20, 0, -1, -1, true, 'p', false, 'c', false, false }, \
+{ 1259, {"relhasrules"}, 16, 0, 1, 21, 0, -1, -1, true, 'p', false, 'c', false, false }, \
+{ 1259, {"relhassubclass"},16, 0, 1, 22, 0, -1, -1, true, 'p', false, 'c', false, false }, \
+{ 1259, {"relacl"}, 1034, 0, -1, 23, 0, -1, -1, false, 'x', false, 'i', false, false }
+
+DATA(insert ( 1259 relname 19 DEFAULT_ATTSTATTARGET NAMEDATALEN 1 0 -1 -1 f p f i f f));
+DATA(insert ( 1259 reltype 26 0 4 2 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 relowner 23 0 4 3 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 relam 26 0 4 4 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 relfilenode 26 0 4 5 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 relpages 23 0 4 6 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 reltuples 700 0 4 7 0 -1 -1 f p f i f f));
+DATA(insert ( 1259 reltoastrelid 26 0 4 8 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 reltoastidxid 26 0 4 9 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 relhasindex 16 0 1 10 0 -1 -1 t p f c f f));
+DATA(insert ( 1259 relisshared 16 0 1 11 0 -1 -1 t p f c f f));
+DATA(insert ( 1259 relkind 18 0 1 12 0 -1 -1 t p f c f f));
+DATA(insert ( 1259 relnatts 21 0 2 13 0 -1 -1 t p f s f f));
+DATA(insert ( 1259 relchecks 21 0 2 14 0 -1 -1 t p f s f f));
+DATA(insert ( 1259 reltriggers 21 0 2 15 0 -1 -1 t p f s f f));
+DATA(insert ( 1259 relukeys 21 0 2 16 0 -1 -1 t p f s f f));
+DATA(insert ( 1259 relfkeys 21 0 2 17 0 -1 -1 t p f s f f));
+DATA(insert ( 1259 relrefs 21 0 2 18 0 -1 -1 t p f s f f));
+DATA(insert ( 1259 relhasoids 16 0 1 19 0 -1 -1 t p f c f f));
+DATA(insert ( 1259 relhaspkey 16 0 1 20 0 -1 -1 t p f c f f));
+DATA(insert ( 1259 relhasrules 16 0 1 21 0 -1 -1 t p f c f f));
+DATA(insert ( 1259 relhassubclass 16 0 1 22 0 -1 -1 t p f c f f));
+DATA(insert ( 1259 relacl 1034 0 -1 23 0 -1 -1 f x f i f f));
+DATA(insert ( 1259 ctid 27 0 6 -1 0 -1 -1 f p f i f f));
+DATA(insert ( 1259 oid 26 0 4 -2 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 xmin 28 0 4 -3 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 cmin 29 0 4 -4 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 xmax 28 0 4 -5 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 cmax 29 0 4 -6 0 -1 -1 t p f i f f));
+DATA(insert ( 1259 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
/* ----------------
* pg_log - this relation is modified by special purpose access
@@ -480,7 +482,7 @@ DATA(insert OID = 0 ( 1259 tableoid 26 0 4 -7 0 -1 -1 t p f i f f));
#define Schema_pg_log \
{ 1269, {"logfoo"}, 26, 0, 4, 1, 0, -1, -1, true, 'p', false, 'i', false, false }
-DATA(insert OID = 0 ( 1269 logfoo 26 0 4 1 0 -1 -1 t p f i f f));
+DATA(insert ( 1269 logfoo 26 0 4 1 0 -1 -1 t p f i f f));
/* ----------------
* pg_xactlock - this relation is modified by special purpose access
@@ -491,6 +493,6 @@ DATA(insert OID = 0 ( 1269 logfoo 26 0 4 1 0 -1 -1 t p f i f f));
#define Schema_pg_xactlock \
{ 376, {"xactlockfoo"}, 26, 0, 4, 1, 0, -1, -1, true, 'p', false, 'i', false, false }
-DATA(insert OID = 0 ( 376 xactlockfoo 26 0 4 1 0 -1 -1 t p f i f f));
+DATA(insert ( 376 xactlockfoo 26 0 4 1 0 -1 -1 t p f i f f));
#endif /* PG_ATTRIBUTE_H */
diff --git a/src/include/catalog/pg_class.h b/src/include/catalog/pg_class.h
index f908c4a9cc..859bb9d185 100644
--- a/src/include/catalog/pg_class.h
+++ b/src/include/catalog/pg_class.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_class.h,v 1.51 2001/06/12 05:55:50 tgl Exp $
+ * $Id: pg_class.h,v 1.52 2001/08/10 18:57:40 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -42,30 +42,31 @@
*/
CATALOG(pg_class) BOOTSTRAP
{
- NameData relname;
- Oid reltype;
- int4 relowner;
- Oid relam;
- Oid relfilenode;
- int4 relpages;
- float4 reltuples;
- Oid reltoastrelid;
- Oid reltoastidxid;
- bool relhasindex;
- bool relisshared;
- char relkind;
- int2 relnatts;
+ NameData relname; /* class name */
+ Oid reltype; /* OID of associated entry in pg_type */
+ int4 relowner; /* class owner */
+ Oid relam; /* index access method; 0 if not an index */
+ Oid relfilenode; /* identifier of physical storage file */
+ int4 relpages; /* # of blocks (not always up-to-date) */
+ float4 reltuples; /* # of tuples (not always up-to-date) */
+ Oid reltoastrelid; /* OID of toast table; 0 if none */
+ Oid reltoastidxid; /* if toast table, OID of chunk_id index */
+ bool relhasindex; /* T if has (or has had) any indexes */
+ bool relisshared; /* T if shared across databases */
+ char relkind; /* see RELKIND_xxx constants below */
+ int2 relnatts; /* number of user attributes */
/*
- * relnatts is the number of user attributes this class has. There
- * must be exactly this many instances in Class pg_attribute for this
- * class that have attnum > 0 (= user attribute).
+ * Class pg_attribute must contain exactly "relnatts" user attributes
+ * (with attnums ranging from 1 to relnatts) for this class. It may
+ * also contain entries with negative attnums for system attributes.
*/
int2 relchecks; /* # of CHECK constraints for class */
int2 reltriggers; /* # of TRIGGERs */
int2 relukeys; /* # of Unique keys (not used) */
int2 relfkeys; /* # of FOREIGN KEYs (not used) */
int2 relrefs; /* # of references to this rel (not used) */
- bool relhaspkey; /* has PRIMARY KEY (not used) */
+ bool relhasoids; /* T if we generate OIDs for rows of rel */
+ bool relhaspkey; /* has PRIMARY KEY index */
bool relhasrules; /* has associated rules */
bool relhassubclass; /* has derived classes */
/*
@@ -93,11 +94,11 @@ typedef FormData_pg_class *Form_pg_class;
/* ----------------
* Natts_pg_class_fixed is used to tell routines that insert new
* pg_class tuples (as opposed to replacing old ones) that there's no
- * relacl field.
+ * relacl field. This is a kluge.
* ----------------
*/
-#define Natts_pg_class_fixed 21
-#define Natts_pg_class 22
+#define Natts_pg_class_fixed 22
+#define Natts_pg_class 23
#define Anum_pg_class_relname 1
#define Anum_pg_class_reltype 2
#define Anum_pg_class_relowner 3
@@ -116,10 +117,11 @@ typedef FormData_pg_class *Form_pg_class;
#define Anum_pg_class_relukeys 16
#define Anum_pg_class_relfkeys 17
#define Anum_pg_class_relrefs 18
-#define Anum_pg_class_relhaspkey 19
-#define Anum_pg_class_relhasrules 20
-#define Anum_pg_class_relhassubclass 21
-#define Anum_pg_class_relacl 22
+#define Anum_pg_class_relhasoids 19
+#define Anum_pg_class_relhaspkey 20
+#define Anum_pg_class_relhasrules 21
+#define Anum_pg_class_relhassubclass 22
+#define Anum_pg_class_relacl 23
/* ----------------
* initial contents of pg_class
@@ -128,23 +130,23 @@ typedef FormData_pg_class *Form_pg_class;
* ----------------
*/
-DATA(insert OID = 1247 ( pg_type 71 PGUID 0 1247 0 0 0 0 f f r 17 0 0 0 0 0 f f f _null_ ));
+DATA(insert OID = 1247 ( pg_type 71 PGUID 0 1247 0 0 0 0 f f r 17 0 0 0 0 0 t f f f _null_ ));
DESCR("");
-DATA(insert OID = 1249 ( pg_attribute 75 PGUID 0 1249 0 0 0 0 f f r 15 0 0 0 0 0 f f f _null_ ));
+DATA(insert OID = 1249 ( pg_attribute 75 PGUID 0 1249 0 0 0 0 f f r 15 0 0 0 0 0 f f f f _null_ ));
DESCR("");
-DATA(insert OID = 1255 ( pg_proc 81 PGUID 0 1255 0 0 0 0 f f r 17 0 0 0 0 0 f f f _null_ ));
+DATA(insert OID = 1255 ( pg_proc 81 PGUID 0 1255 0 0 0 0 f f r 17 0 0 0 0 0 t f f f _null_ ));
DESCR("");
-DATA(insert OID = 1259 ( pg_class 83 PGUID 0 1259 0 0 0 0 f f r 22 0 0 0 0 0 f f f _null_ ));
+DATA(insert OID = 1259 ( pg_class 83 PGUID 0 1259 0 0 0 0 f f r 23 0 0 0 0 0 t f f f _null_ ));
DESCR("");
-DATA(insert OID = 1260 ( pg_shadow 86 PGUID 0 1260 0 0 0 0 f t r 8 0 0 0 0 0 f f f _null_ ));
+DATA(insert OID = 1260 ( pg_shadow 86 PGUID 0 1260 0 0 0 0 f t r 8 0 0 0 0 0 f f f f _null_ ));
DESCR("");
-DATA(insert OID = 1261 ( pg_group 87 PGUID 0 1261 0 0 0 0 f t r 3 0 0 0 0 0 f f f _null_ ));
+DATA(insert OID = 1261 ( pg_group 87 PGUID 0 1261 0 0 0 0 f t r 3 0 0 0 0 0 f f f f _null_ ));
DESCR("");
-DATA(insert OID = 1262 ( pg_database 88 PGUID 0 1262 0 0 0 0 f t r 7 0 0 0 0 0 f f f _null_ ));
+DATA(insert OID = 1262 ( pg_database 88 PGUID 0 1262 0 0 0 0 f t r 7 0 0 0 0 0 t f f f _null_ ));
DESCR("");
-DATA(insert OID = 1269 ( pg_log 99 PGUID 0 1269 0 0 0 0 f t s 1 0 0 0 0 0 f f f _null_ ));
+DATA(insert OID = 1269 ( pg_log 99 PGUID 0 1269 0 0 0 0 f t s 1 0 0 0 0 0 f f f f _null_ ));
DESCR("");
-DATA(insert OID = 376 ( pg_xactlock 0 PGUID 0 0 0 0 0 0 f t s 1 0 0 0 0 0 f f f _null_ ));
+DATA(insert OID = 376 ( pg_xactlock 0 PGUID 0 0 0 0 0 0 f t s 1 0 0 0 0 0 f f f f _null_ ));
DESCR("");
#define RelOid_pg_type 1247
diff --git a/src/include/catalog/pg_description.h b/src/include/catalog/pg_description.h
index 0b5d342c0d..e3f21a49b6 100644
--- a/src/include/catalog/pg_description.h
+++ b/src/include/catalog/pg_description.h
@@ -3,11 +3,26 @@
* pg_description.h
* definition of the system "description" relation (pg_description)
*
+ * NOTE: an object is identified by the OID of the row that primarily
+ * defines the object, plus the OID of the table that that row appears in.
+ * For example, a function is identified by the OID of its pg_proc row
+ * plus the pg_class OID of table pg_proc. This allows unique identification
+ * of objects without assuming that OIDs are unique across tables.
+ *
+ * Since attributes don't have OIDs of their own, we identify an attribute
+ * comment by the objoid+classoid of its parent table, plus an "objsubid"
+ * giving the attribute column number. "objsubid" must be zero in a comment
+ * for a table itself, so that it is distinct from any column comment.
+ * Currently, objsubid is unused and zero for all other kinds of objects,
+ * but perhaps it might be useful someday to associate comments with
+ * constituent elements of other kinds of objects (arguments of a function,
+ * for example).
+ *
*
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_description.h,v 1.12 2001/01/24 19:43:21 momjian Exp $
+ * $Id: pg_description.h,v 1.13 2001/08/10 18:57:40 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -33,10 +48,12 @@
* typedef struct FormData_pg_description
* ----------------
*/
-CATALOG(pg_description)
+CATALOG(pg_description) BKI_WITHOUT_OIDS
{
- Oid objoid;
- text description;
+ Oid objoid; /* OID of object itself */
+ Oid classoid; /* OID of table containing object */
+ int4 objsubid; /* column number, or 0 if not used */
+ text description; /* description of object */
} FormData_pg_description;
/* ----------------
@@ -50,9 +67,11 @@ typedef FormData_pg_description *Form_pg_description;
* compiler constants for pg_descrpition
* ----------------
*/
-#define Natts_pg_description 2
+#define Natts_pg_description 4
#define Anum_pg_description_objoid 1
-#define Anum_pg_description_description 2
+#define Anum_pg_description_classoid 2
+#define Anum_pg_description_objsubid 3
+#define Anum_pg_description_description 4
/* ----------------
* initial contents of pg_description
@@ -61,8 +80,8 @@ typedef FormData_pg_description *Form_pg_description;
/*
* Because the contents of this table are taken from the other *.h files,
- * there is no initialization. It is loaded from initdb using a COPY
- * statement.
+ * there is no initialization here. The initial contents are extracted
+ * by genbki.sh and loaded during initdb.
*/
#endif /* PG_DESCRIPTION_H */
diff --git a/src/include/catalog/pg_group.h b/src/include/catalog/pg_group.h
index 7fdc533ee1..d9d3ba7068 100644
--- a/src/include/catalog/pg_group.h
+++ b/src/include/catalog/pg_group.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_group.h,v 1.9 2001/01/24 19:43:21 momjian Exp $
+ * $Id: pg_group.h,v 1.10 2001/08/10 18:57:40 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -25,7 +25,7 @@
* ----------------
*/
-CATALOG(pg_group) BOOTSTRAP
+CATALOG(pg_group) BOOTSTRAP BKI_WITHOUT_OIDS
{
NameData groname;
int4 grosysid;
diff --git a/src/include/catalog/pg_index.h b/src/include/catalog/pg_index.h
index 521a3ec3b6..e50b84ffd0 100644
--- a/src/include/catalog/pg_index.h
+++ b/src/include/catalog/pg_index.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_index.h,v 1.22 2001/07/15 22:48:18 tgl Exp $
+ * $Id: pg_index.h,v 1.23 2001/08/10 18:57:40 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -40,14 +40,13 @@
* first variable length field. so I moved indislossy, indhaskeytype,
* and indisunique before indpred. --djm 8/20/96
*/
-CATALOG(pg_index)
+CATALOG(pg_index) BKI_WITHOUT_OIDS
{
- Oid indexrelid;
- Oid indrelid;
- Oid indproc; /* registered procedure for functional
- * index */
- int2vector indkey;
- oidvector indclass;
+ Oid indexrelid; /* OID of the index */
+ Oid indrelid; /* OID of the relation it indexes */
+ Oid indproc; /* OID of function for functional index */
+ int2vector indkey; /* column numbers of indexed attributes */
+ oidvector indclass; /* opclass identifiers */
bool indisclustered; /* unused */
bool indislossy; /* index hit must be reevaluated against heap
* value to make sure it really is match;
diff --git a/src/include/catalog/pg_inherits.h b/src/include/catalog/pg_inherits.h
index 33b8b244e6..599554e538 100644
--- a/src/include/catalog/pg_inherits.h
+++ b/src/include/catalog/pg_inherits.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_inherits.h,v 1.10 2001/01/24 19:43:21 momjian Exp $
+ * $Id: pg_inherits.h,v 1.11 2001/08/10 18:57:40 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -31,7 +31,7 @@
* typedef struct FormData_pg_inherits
* ----------------
*/
-CATALOG(pg_inherits)
+CATALOG(pg_inherits) BKI_WITHOUT_OIDS
{
Oid inhrelid;
Oid inhparent;
diff --git a/src/include/catalog/pg_largeobject.h b/src/include/catalog/pg_largeobject.h
index 37443041e6..be1283d67e 100644
--- a/src/include/catalog/pg_largeobject.h
+++ b/src/include/catalog/pg_largeobject.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_largeobject.h,v 1.7 2001/03/22 04:00:39 momjian Exp $
+ * $Id: pg_largeobject.h,v 1.8 2001/08/10 18:57:40 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -28,12 +28,11 @@
/* ----------------
* pg_largeobject definition. cpp turns this into
- * typedef struct FormData_pg_largeobject. Large object id
- * is stored in loid;
+ * typedef struct FormData_pg_largeobject
* ----------------
*/
-CATALOG(pg_largeobject)
+CATALOG(pg_largeobject) BKI_WITHOUT_OIDS
{
Oid loid; /* Identifier of large object */
int4 pageno; /* Page number (starting from 0) */
diff --git a/src/include/catalog/pg_listener.h b/src/include/catalog/pg_listener.h
index 47b77bfab2..b191e02059 100644
--- a/src/include/catalog/pg_listener.h
+++ b/src/include/catalog/pg_listener.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_listener.h,v 1.9 2001/06/12 05:55:50 tgl Exp $
+ * $Id: pg_listener.h,v 1.10 2001/08/10 18:57:40 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -32,7 +32,7 @@
* ----------------------------------------------------------------
*/
-CATALOG(pg_listener)
+CATALOG(pg_listener) BKI_WITHOUT_OIDS
{
NameData relname;
int4 listenerpid;
diff --git a/src/include/catalog/pg_log.h b/src/include/catalog/pg_log.h
index 9368f2bdce..951aaf0efc 100644
--- a/src/include/catalog/pg_log.h
+++ b/src/include/catalog/pg_log.h
@@ -10,7 +10,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_log.h,v 1.8 2001/01/24 19:43:21 momjian Exp $
+ * $Id: pg_log.h,v 1.9 2001/08/10 18:57:40 tgl Exp $
*
* NOTES
* The structures and macros used by the transam/ code
@@ -28,7 +28,7 @@
* ----------------
*/
-CATALOG(pg_log) BOOTSTRAP
+CATALOG(pg_log) BOOTSTRAP BKI_WITHOUT_OIDS
{
Oid logfoo;
} FormData_pg_log;
diff --git a/src/include/catalog/pg_proc.h b/src/include/catalog/pg_proc.h
index c5551e3697..cfb8b051fa 100644
--- a/src/include/catalog/pg_proc.h
+++ b/src/include/catalog/pg_proc.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_proc.h,v 1.200 2001/08/06 01:25:32 tgl Exp $
+ * $Id: pg_proc.h,v 1.201 2001/08/10 18:57:40 tgl Exp $
*
* NOTES
* The script catalog/genbki.sh reads this file and generates .bki
@@ -1481,6 +1481,11 @@ DESCR("date difference preserving months and years");
DATA(insert OID = 1200 ( reltime PGUID 12 f t t t 1 f 703 "23" 100 0 0 100 int4reltime - ));
DESCR("convert int4 to reltime");
+DATA(insert OID = 1215 ( obj_description PGUID 14 f t f t 2 f 25 "26 19" 100 0 0 100 "select description from pg_description where objoid = $1 and classoid = (select oid from pg_class where relname = $2) and objsubid = 0" - ));
+DESCR("get description for object id and catalog name");
+DATA(insert OID = 1216 ( col_description PGUID 14 f t f t 2 f 25 "26 23" 100 0 0 100 "select description from pg_description where objoid = $1 and classoid = (select oid from pg_class where relname = 'pg_class') and objsubid = $2" - ));
+DESCR("get description for table column");
+
DATA(insert OID = 1217 ( date_trunc PGUID 12 f t f t 2 f 1184 "25 1184" 100 0 0 100 timestamp_trunc - ));
DESCR("truncate timestamp to specified units");
DATA(insert OID = 1218 ( date_trunc PGUID 12 f t f t 2 f 1186 "25 1186" 100 0 0 100 interval_trunc - ));
@@ -1624,8 +1629,12 @@ DESCR("exponentiation");
DATA(insert OID = 1347 ( exp PGUID 12 f t t t 1 f 701 "701" 100 0 0 100 dexp - ));
DESCR("exponential");
-DATA(insert OID = 1348 ( obj_description PGUID 14 f t f t 1 f 25 "26" 100 0 0 100 "select description from pg_description where objoid = $1" - ));
-DESCR("get description for object id");
+/*
+ * This form of obj_description is now deprecated, since it will fail if
+ * OIDs are not unique across system catalogs. Use the other forms instead.
+ */
+DATA(insert OID = 1348 ( obj_description PGUID 14 f t f t 1 f 25 "26" 100 0 0 100 "select description from pg_description where objoid = $1 and objsubid = 0" - ));
+DESCR("get description for object id (deprecated)");
DATA(insert OID = 1349 ( oidvectortypes PGUID 12 f t f t 1 f 25 "30" 100 0 0 100 oidvectortypes - ));
DESCR("print type names of oidvector field");
diff --git a/src/include/catalog/pg_relcheck.h b/src/include/catalog/pg_relcheck.h
index 7c7cd11447..86268f578e 100644
--- a/src/include/catalog/pg_relcheck.h
+++ b/src/include/catalog/pg_relcheck.h
@@ -27,7 +27,7 @@
* typedef struct FormData_pg_relcheck
* ----------------
*/
-CATALOG(pg_relcheck)
+CATALOG(pg_relcheck) BKI_WITHOUT_OIDS
{
Oid rcrelid;
NameData rcname;
diff --git a/src/include/catalog/pg_shadow.h b/src/include/catalog/pg_shadow.h
index fdec3fa82c..49320b4e7d 100644
--- a/src/include/catalog/pg_shadow.h
+++ b/src/include/catalog/pg_shadow.h
@@ -9,7 +9,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_shadow.h,v 1.12 2001/06/13 21:44:41 tgl Exp $
+ * $Id: pg_shadow.h,v 1.13 2001/08/10 18:57:41 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -29,7 +29,7 @@
* typedef struct FormData_pg_shadow
* ----------------
*/
-CATALOG(pg_shadow) BOOTSTRAP
+CATALOG(pg_shadow) BOOTSTRAP BKI_WITHOUT_OIDS
{
NameData usename;
int4 usesysid;
@@ -69,6 +69,6 @@ typedef FormData_pg_shadow *Form_pg_shadow;
* user choices.
* ----------------
*/
-DATA(insert OID = 0 ( "POSTGRES" PGUID t t t t _null_ _null_ ));
+DATA(insert ( "POSTGRES" PGUID t t t t _null_ _null_ ));
#endif /* PG_SHADOW_H */
diff --git a/src/include/catalog/pg_statistic.h b/src/include/catalog/pg_statistic.h
index 8d6a6b37c1..cead36c201 100644
--- a/src/include/catalog/pg_statistic.h
+++ b/src/include/catalog/pg_statistic.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_statistic.h,v 1.11 2001/05/07 00:43:25 tgl Exp $
+ * $Id: pg_statistic.h,v 1.12 2001/08/10 18:57:41 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -31,7 +31,7 @@
* typedef struct FormData_pg_statistic
* ----------------
*/
-CATALOG(pg_statistic)
+CATALOG(pg_statistic) BKI_WITHOUT_OIDS
{
/* These fields form the unique key for the entry: */
Oid starelid; /* relation containing attribute */
diff --git a/src/include/catalog/unused_oids b/src/include/catalog/unused_oids
index 91a2c84734..dada47cdfc 100755
--- a/src/include/catalog/unused_oids
+++ b/src/include/catalog/unused_oids
@@ -1,7 +1,7 @@
#!/bin/sh
# unused_oids
#
-# $Header: /cvsroot/pgsql/src/include/catalog/unused_oids,v 1.3 2000/01/17 00:53:11 tgl Exp $
+# $Header: /cvsroot/pgsql/src/include/catalog/unused_oids,v 1.4 2001/08/10 18:57:41 tgl Exp $
#
# finds blocks of oids that have not already been claimed by
# post_hackers for internal purposes. primarily useful for
@@ -18,11 +18,19 @@
#
# run this script in src/include/catalog.
#
+
+
+AWK="awk"
+
+# Get FirstGenBKIObjectId from access/transam.h
+BKIOBJECTID=`grep '#define[ ]*FirstGenBKIObjectId' ../access/transam.h | $AWK '{ print $3 }'`
+export BKIOBJECTID
+
egrep '^DATA' pg_*.h | \
sed -e 's/^.*OID[^=]*=[^0-9]*//' -e 's/[^0-9].*$//' | \
sort -n | \
uniq | \
- awk '
+ $AWK '
BEGIN {
last = 0;
}
@@ -37,6 +45,5 @@ BEGIN {
last = $1;
}
END {
-# 2^14-1 = current BootstrapObjectIdData value
- print last + 1, "-", 2^14-1;
+ print last + 1, "-", ENVIRON["BKIOBJECTID"]-1;
}'
diff --git a/src/include/commands/comment.h b/src/include/commands/comment.h
index 7d9b279c81..371f918b6e 100644
--- a/src/include/commands/comment.h
+++ b/src/include/commands/comment.h
@@ -18,15 +18,18 @@
* Function Prototypes --
*
* The following protoypes define the public functions of the comment
- * related routines. CreateComments() is used to create/drop a comment
- * for any object with a valid oid. DeleteComments() deletes, if any,
- * the comments associated with the object. CommentObject() is used to
- * create comments to be identified by the specific type.
+ * related routines. CommentObject() implements the SQL "COMMENT ON"
+ * command. DeleteComments() deletes all comments for an object.
+ * CreateComments creates (or deletes, if comment is NULL) a comment
+ * for a specific key.
*------------------------------------------------------------------
*/
-extern void DeleteComments(Oid oid);
extern void CommentObject(int objtype, char *objname, char *objproperty,
List *objlist, char *comment);
+extern void DeleteComments(Oid oid, Oid classoid);
+
+extern void CreateComments(Oid oid, Oid classoid, int32 subid, char *comment);
+
#endif /* COMMENT_H */
diff --git a/src/include/nodes/parsenodes.h b/src/include/nodes/parsenodes.h
index 704b8cab4a..a76c6f949f 100644
--- a/src/include/nodes/parsenodes.h
+++ b/src/include/nodes/parsenodes.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: parsenodes.h,v 1.139 2001/08/10 14:30:15 momjian Exp $
+ * $Id: parsenodes.h,v 1.140 2001/08/10 18:57:41 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -192,13 +192,14 @@ typedef struct CopyStmt
typedef struct CreateStmt
{
NodeTag type;
- bool istemp; /* is this a temp table? */
char *relname; /* name of relation to create */
List *tableElts; /* column definitions (list of ColumnDef) */
List *inhRelnames; /* relations to inherit from (list of
* T_String Values) */
List *constraints; /* constraints (list of Constraint and
* FkConstraint nodes) */
+ bool istemp; /* is this a temp table? */
+ bool hasoids; /* should it have OIDs? */
} CreateStmt;
/* ----------
diff --git a/src/include/parser/parse_relation.h b/src/include/parser/parse_relation.h
index 904bde9623..82b3b0dd15 100644
--- a/src/include/parser/parse_relation.h
+++ b/src/include/parser/parse_relation.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: parse_relation.h,v 1.23 2001/03/22 04:00:58 momjian Exp $
+ * $Id: parse_relation.h,v 1.24 2001/08/10 18:57:41 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -45,7 +45,6 @@ extern List *expandRelAttrs(ParseState *pstate, RangeTblEntry *rte);
extern List *expandJoinAttrs(ParseState *pstate, JoinExpr *join,
int sublevels_up);
extern int attnameAttNum(Relation rd, char *a);
-extern int specialAttNum(char *a);
extern Oid attnumTypeId(Relation rd, int attid);
#endif /* PARSE_RELATION_H */
diff --git a/src/include/postgres.h b/src/include/postgres.h
index e4e959d70f..1502c84a4c 100644
--- a/src/include/postgres.h
+++ b/src/include/postgres.h
@@ -10,7 +10,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1995, Regents of the University of California
*
- * $Id: postgres.h,v 1.49 2001/06/12 05:55:50 tgl Exp $
+ * $Id: postgres.h,v 1.50 2001/08/10 18:57:41 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -55,7 +55,7 @@
*/
/* ----------------
- * 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
@@ -78,9 +78,6 @@ typedef struct varattrib
int32 va_extsize; /* External saved size */
Oid va_valueid; /* Unique identifier of value */
Oid va_toastrelid; /* RelID where to find chunks */
- Oid va_toastidxid; /* Main tables row Oid */
- Oid va_rowid; /* Referencing row Oid */
- int16 va_attno; /* Main tables attno */
} va_external;/* External stored attribute */
char va_data[1]; /* Plain stored attribute */
@@ -573,6 +570,8 @@ extern int assertTest(int val);
#define BOOTSTRAP
+#define BKI_WITHOUT_OIDS
+
/* these need to expand into some harmless, repeatable declaration */
#define DATA(x) extern int errno
#define DESCR(x) extern int errno
diff --git a/src/include/utils/syscache.h b/src/include/utils/syscache.h
index c98bee3f30..b9b77ca2ce 100644
--- a/src/include/utils/syscache.h
+++ b/src/include/utils/syscache.h
@@ -9,7 +9,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: syscache.h,v 1.31 2001/06/12 05:55:50 tgl Exp $
+ * $Id: syscache.h,v 1.32 2001/08/10 18:57:41 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -64,13 +64,11 @@ extern void ReleaseSysCache(HeapTuple tuple);
/* convenience routines */
extern HeapTuple SearchSysCacheCopy(int cacheId,
Datum key1, Datum key2, Datum key3, Datum key4);
+extern bool SearchSysCacheExists(int cacheId,
+ Datum key1, Datum key2, Datum key3, Datum key4);
extern Oid GetSysCacheOid(int cacheId,
Datum key1, Datum key2, Datum key3, Datum key4);
-/* macro for just probing for existence of a tuple via the syscache */
-#define SearchSysCacheExists(c,k1,k2,k3,k4) \
- OidIsValid(GetSysCacheOid(c,k1,k2,k3,k4))
-
extern Datum SysCacheGetAttr(int cacheId, HeapTuple tup,
AttrNumber attributeNumber, bool *isNull);