From 763a7ab6b00387770e281d37fd84bba1e03a0b7d Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sat, 27 Mar 1999 17:26:26 +0000 Subject: [PATCH] Delete unused system table pg_parg. --- contrib/findoidjoins/README | 29 +++--- src/backend/catalog/Makefile | 4 +- src/include/catalog/pg_parg.h | 117 ------------------------- src/test/regress/expected/oidjoins.out | 8 -- src/test/regress/sql/oidjoins.sql | 4 - 5 files changed, 17 insertions(+), 145 deletions(-) delete mode 100644 src/include/catalog/pg_parg.h diff --git a/contrib/findoidjoins/README b/contrib/findoidjoins/README index ef7b3048db..26086a6c41 100644 --- a/contrib/findoidjoins/README +++ b/contrib/findoidjoins/README @@ -1,23 +1,27 @@ findoidjoins -This program scans a database, and prints oid fields and the tables -they join to. CAUTION: it is ver-r-r-y slow on a large database, or -even a not-so-large one. We don't really recommend running it on -anything but an empty database. +This program scans a database, and prints oid fields (also regproc fields) +and the tables they join to. CAUTION: it is ver-r-r-y slow on a large +database, or even a not-so-large one. We don't really recommend running +it on anything but an empty database. It requires pgsql/contrib/pginterface to be compiled first. -Run on an empty database, it returns the system join relationships -(shown below for 6.5). Note that unexpected matches may indicate -bogus entries in system tables --- don't accept a peculiar match -without question. In particular, a field shown as joining to more -than one target table is probably messed up. +Run on an empty database, it returns the system join relationships (shown +below for 6.5). Note that unexpected matches may indicate bogus entries +in system tables --- don't accept a peculiar match without question. +In particular, a field shown as joining to more than one target table is +probably messed up. In 6.5, the *only* field that should join to more +than one target is pg_description.objoid. (Running make_oidjoins_check +is an easy way to spot fields joining to more than one table, BTW.) The shell script make_oidjoins_check converts findoidjoins' output into an SQL script that checks for dangling links (entries in an -OID column that don't match any row in the expected table). -The result of this script should be installed as the "oidjoins" +OID or REGPROC column that don't match any row in the expected table). +Note that fields joining to more than one table are NOT processed. + +The result of make_oidjoins_check should be installed as the "oidjoins" regression test. The oidjoins test should be updated after any revision in the patterns of cross-links between system tables. (Ideally we'd just regenerate the script as part of the regression @@ -68,9 +72,6 @@ Join pg_operator.oprrsortop => pg_operator.oid Join pg_operator.oprcode => pg_proc.oid Join pg_operator.oprrest => pg_proc.oid Join pg_operator.oprjoin => pg_proc.oid -Join pg_parg.parproid => pg_operator.oid -Join pg_parg.parproid => pg_proc.oid -Join pg_parg.partype => pg_type.oid Join pg_proc.prolang => pg_language.oid Join pg_proc.prorettype => pg_type.oid Join pg_rewrite.ev_class => pg_class.oid diff --git a/src/backend/catalog/Makefile b/src/backend/catalog/Makefile index e356ec1aaf..0d63ad7330 100644 --- a/src/backend/catalog/Makefile +++ b/src/backend/catalog/Makefile @@ -4,7 +4,7 @@ # Makefile for catalog # # IDENTIFICATION -# $Header: /cvsroot/pgsql/src/backend/catalog/Makefile,v 1.16 1999/01/18 06:32:24 momjian Exp $ +# $Header: /cvsroot/pgsql/src/backend/catalog/Makefile,v 1.17 1999/03/27 17:25:09 tgl Exp $ # #------------------------------------------------------------------------- @@ -33,7 +33,7 @@ LOCALBKI_SRCS= $(addprefix ../../include/catalog/, \ pg_proc.h pg_type.h pg_attribute.h pg_class.h \ pg_inherits.h pg_index.h pg_statistic.h \ pg_operator.h pg_opclass.h pg_am.h pg_amop.h pg_amproc.h \ - pg_language.h pg_parg.h \ + pg_language.h \ pg_aggregate.h pg_ipl.h pg_inheritproc.h \ pg_rewrite.h pg_listener.h pg_description.h indexing.h \ ) diff --git a/src/include/catalog/pg_parg.h b/src/include/catalog/pg_parg.h deleted file mode 100644 index 90d1947baa..0000000000 --- a/src/include/catalog/pg_parg.h +++ /dev/null @@ -1,117 +0,0 @@ -/*------------------------------------------------------------------------- - * - * pg_parg.h - * definition of the system "parg" relation (pg_parg) - * along with the relation's initial contents. - * - * [whatever this relation was, it doesn't seem to be used anymore --djm] - * - * Copyright (c) 1994, Regents of the University of California - * - * $Id: pg_parg.h,v 1.7 1999/02/13 23:21:12 momjian Exp $ - * - * NOTES - * the genbki.sh script reads this file and generates .bki - * information from the DATA() statements. - * - *------------------------------------------------------------------------- - */ -#ifndef PG_PARG_H -#define PG_PARG_H - -/* ---------------- - * postgres.h contains the system type definintions and the - * CATALOG(), BOOTSTRAP and DATA() sugar words so this file - * can be read by both genbki.sh and the C compiler. - * ---------------- - */ - -/* ---------------- - * pg_parg definition. cpp turns this into - * typedef struct FormData_pg_parg - * ---------------- - */ -CATALOG(pg_parg) -{ - Oid parproid; - int2 parnum; - char parbound; - Oid partype; -} FormData_pg_parg; - -/* ---------------- - * Form_pg_parg corresponds to a pointer to a tuple with - * the format of pg_parg relation. - * ---------------- - */ -typedef FormData_pg_parg *Form_pg_parg; - -/* ---------------- - * compiler constants for pg_parg - * ---------------- - */ -#define Natts_pg_parg 4 -#define Anum_pg_parg_parproid 1 -#define Anum_pg_parg_parnum 2 -#define Anum_pg_parg_parbound 3 -#define Anum_pg_parg_partype 4 - -/* ---------------- - * initial contents of pg_parg - * ---------------- - */ - -DATA(insert OID = 0 ( 1242 1 - 23 )); -DATA(insert OID = 0 ( 1243 1 - 16 )); -DATA(insert OID = 0 ( 1244 1 - 23 )); -DATA(insert OID = 0 ( 31 1 - 17 )); -DATA(insert OID = 0 ( 1245 1 - 23 )); -DATA(insert OID = 0 ( 33 1 - 18 )); -DATA(insert OID = 0 ( 34 1 - 23 )); -DATA(insert OID = 0 ( 35 1 - 19 )); -DATA(insert OID = 0 ( 36 1 - 23 )); -DATA(insert OID = 0 ( 37 1 - 20 )); -DATA(insert OID = 0 ( 38 1 - 23 )); -DATA(insert OID = 0 ( 39 1 - 21 )); -DATA(insert OID = 0 ( 40 1 - 23 )); -DATA(insert OID = 0 ( 41 1 - 22 )); -DATA(insert OID = 0 ( 42 1 - 23 )); -DATA(insert OID = 0 ( 43 1 - 23 )); -DATA(insert OID = 0 ( 44 1 - 23 )); -DATA(insert OID = 0 ( 45 1 - 24 )); -DATA(insert OID = 0 ( 46 1 - 23 )); -DATA(insert OID = 0 ( 47 1 - 25 )); -DATA(insert OID = 0 ( 50 1 - 23 )); -DATA(insert OID = 0 ( 50 2 - 23 )); -DATA(insert OID = 0 ( 50 3 - 23 )); -DATA(insert OID = 0 ( 51 1 - 23 )); -DATA(insert OID = 0 ( 52 1 - 23 )); -DATA(insert OID = 0 ( 52 2 - 23 )); -DATA(insert OID = 0 ( 52 3 - 23 )); -DATA(insert OID = 0 ( 52 4 - 23 )); -DATA(insert OID = 0 ( 53 1 - 23 )); -DATA(insert OID = 0 ( 54 1 - 23 )); -DATA(insert OID = 0 ( 54 2 - 23 )); -DATA(insert OID = 0 ( 55 1 - 23 )); -DATA(insert OID = 0 ( 55 2 - 23 )); -DATA(insert OID = 0 ( 56 1 - 23 )); -DATA(insert OID = 0 ( 56 2 - 23 )); -DATA(insert OID = 0 ( 57 1 - 23 )); -DATA(insert OID = 0 ( 57 2 - 23 )); -DATA(insert OID = 0 ( 57 3 - 23 )); -DATA(insert OID = 0 ( 60 1 - 16 )); -DATA(insert OID = 0 ( 60 2 - 16 )); -DATA(insert OID = 0 ( 61 1 - 18 )); -DATA(insert OID = 0 ( 61 2 - 18 )); -DATA(insert OID = 0 ( 63 1 - 21 )); -DATA(insert OID = 0 ( 63 2 - 21 )); -DATA(insert OID = 0 ( 64 1 - 21 )); -DATA(insert OID = 0 ( 64 2 - 21 )); -DATA(insert OID = 0 ( 65 1 - 23 )); -DATA(insert OID = 0 ( 65 2 - 23 )); -DATA(insert OID = 0 ( 66 1 - 23 )); -DATA(insert OID = 0 ( 66 2 - 23 )); -DATA(insert OID = 0 ( 67 1 - 25 )); -DATA(insert OID = 0 ( 67 2 - 25 )); - -#endif /* PG_PARG_H */ diff --git a/src/test/regress/expected/oidjoins.out b/src/test/regress/expected/oidjoins.out index d24d4c5787..bcd465da07 100644 --- a/src/test/regress/expected/oidjoins.out +++ b/src/test/regress/expected/oidjoins.out @@ -326,14 +326,6 @@ oid|oprjoin ---+------- (0 rows) -QUERY: SELECT oid, pg_parg.partype -FROM pg_parg -WHERE pg_parg.partype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_parg.partype); -oid|partype ----+------- -(0 rows) - QUERY: SELECT oid, pg_proc.prolang FROM pg_proc WHERE pg_proc.prolang != 0 AND diff --git a/src/test/regress/sql/oidjoins.sql b/src/test/regress/sql/oidjoins.sql index 6d372065fc..a6a7723ebd 100644 --- a/src/test/regress/sql/oidjoins.sql +++ b/src/test/regress/sql/oidjoins.sql @@ -165,10 +165,6 @@ SELECT oid, pg_operator.oprjoin FROM pg_operator WHERE pg_operator.oprjoin != 0 AND NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_operator.oprjoin); -SELECT oid, pg_parg.partype -FROM pg_parg -WHERE pg_parg.partype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_parg.partype); SELECT oid, pg_proc.prolang FROM pg_proc WHERE pg_proc.prolang != 0 AND