diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2016-06-22 17:12:55 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2016-06-22 17:12:55 -0400 |
commit | 63ae052367c350935c3cec3e3c53a1e34a317e96 (patch) | |
tree | fe59126d3015f1ce5d4fdcd0e6441cfc735cf9bc /src | |
parent | f8ace5477ef9731ef605f58d313c4cd1548f12d2 (diff) | |
download | postgresql-63ae052367c350935c3cec3e3c53a1e34a317e96.tar.gz postgresql-63ae052367c350935c3cec3e3c53a1e34a317e96.zip |
Update oidjoins regression test for 9.6.
Looks like we had some more catalog drift recently.
Diffstat (limited to 'src')
-rw-r--r-- | src/test/regress/expected/oidjoins.out | 32 | ||||
-rw-r--r-- | src/test/regress/sql/oidjoins.sql | 16 | ||||
-rw-r--r-- | src/tools/findoidjoins/README | 14 |
3 files changed, 58 insertions, 4 deletions
diff --git a/src/test/regress/expected/oidjoins.out b/src/test/regress/expected/oidjoins.out index f10e007f58c..5fe630777f1 100644 --- a/src/test/regress/expected/oidjoins.out +++ b/src/test/regress/expected/oidjoins.out @@ -25,6 +25,30 @@ WHERE aggfinalfn != 0 AND ------+------------ (0 rows) +SELECT ctid, aggcombinefn +FROM pg_catalog.pg_aggregate fk +WHERE aggcombinefn != 0 AND + NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.aggcombinefn); + ctid | aggcombinefn +------+-------------- +(0 rows) + +SELECT ctid, aggserialfn +FROM pg_catalog.pg_aggregate fk +WHERE aggserialfn != 0 AND + NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.aggserialfn); + ctid | aggserialfn +------+------------- +(0 rows) + +SELECT ctid, aggdeserialfn +FROM pg_catalog.pg_aggregate fk +WHERE aggdeserialfn != 0 AND + NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.aggdeserialfn); + ctid | aggdeserialfn +------+--------------- +(0 rows) + SELECT ctid, aggmtransfn FROM pg_catalog.pg_aggregate fk WHERE aggmtransfn != 0 AND @@ -481,6 +505,14 @@ WHERE inhparent != 0 AND ------+----------- (0 rows) +SELECT ctid, classoid +FROM pg_catalog.pg_init_privs fk +WHERE classoid != 0 AND + NOT EXISTS(SELECT 1 FROM pg_catalog.pg_class pk WHERE pk.oid = fk.classoid); + ctid | classoid +------+---------- +(0 rows) + SELECT ctid, lanowner FROM pg_catalog.pg_language fk WHERE lanowner != 0 AND diff --git a/src/test/regress/sql/oidjoins.sql b/src/test/regress/sql/oidjoins.sql index 9b7c47060b6..ef749936eb1 100644 --- a/src/test/regress/sql/oidjoins.sql +++ b/src/test/regress/sql/oidjoins.sql @@ -13,6 +13,18 @@ SELECT ctid, aggfinalfn FROM pg_catalog.pg_aggregate fk WHERE aggfinalfn != 0 AND NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.aggfinalfn); +SELECT ctid, aggcombinefn +FROM pg_catalog.pg_aggregate fk +WHERE aggcombinefn != 0 AND + NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.aggcombinefn); +SELECT ctid, aggserialfn +FROM pg_catalog.pg_aggregate fk +WHERE aggserialfn != 0 AND + NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.aggserialfn); +SELECT ctid, aggdeserialfn +FROM pg_catalog.pg_aggregate fk +WHERE aggdeserialfn != 0 AND + NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.aggdeserialfn); SELECT ctid, aggmtransfn FROM pg_catalog.pg_aggregate fk WHERE aggmtransfn != 0 AND @@ -241,6 +253,10 @@ SELECT ctid, inhparent FROM pg_catalog.pg_inherits fk WHERE inhparent != 0 AND NOT EXISTS(SELECT 1 FROM pg_catalog.pg_class pk WHERE pk.oid = fk.inhparent); +SELECT ctid, classoid +FROM pg_catalog.pg_init_privs fk +WHERE classoid != 0 AND + NOT EXISTS(SELECT 1 FROM pg_catalog.pg_class pk WHERE pk.oid = fk.classoid); SELECT ctid, lanowner FROM pg_catalog.pg_language fk WHERE lanowner != 0 AND diff --git a/src/tools/findoidjoins/README b/src/tools/findoidjoins/README index f7a88227ac8..af8c99eb6a0 100644 --- a/src/tools/findoidjoins/README +++ b/src/tools/findoidjoins/README @@ -16,9 +16,11 @@ catalogs in interesting ways. 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 9.6devel, the *only* fields that should join to more than one target -table are pg_description.objoid, pg_depend.objid, pg_depend.refobjid, -pg_shdescription.objoid, pg_shdepend.objid, and pg_shdepend.refobjid. +In 9.6, the *only* fields that should join to more than one target +table are: +pg_description.objoid, pg_depend.objid, pg_depend.refobjid, +pg_shdescription.objoid, pg_shdepend.objid, pg_shdepend.refobjid, +and pg_init_privs.objoid. (Running make_oidjoins_check is an easy way to spot fields joining to more than one table, BTW.) @@ -33,7 +35,7 @@ regression test. The oidjoins test should be updated after any revision in the patterns of cross-links between system tables. (Typically we update it at the end of each development cycle.) -NOTE: as of 9.6devel, make_oidjoins_check produces two bogus join checks: +NOTE: as of 9.6, make_oidjoins_check produces two bogus join checks: Join pg_catalog.pg_class.relfilenode => pg_catalog.pg_class.oid Join pg_catalog.pg_database.datlastsysoid => pg_catalog.pg_database.oid These are artifacts and should not be added to the oidjoins regression test. @@ -45,6 +47,9 @@ neither of which should be added to the regression test. Join pg_catalog.pg_aggregate.aggfnoid => pg_catalog.pg_proc.oid Join pg_catalog.pg_aggregate.aggtransfn => pg_catalog.pg_proc.oid Join pg_catalog.pg_aggregate.aggfinalfn => pg_catalog.pg_proc.oid +Join pg_catalog.pg_aggregate.aggcombinefn => pg_catalog.pg_proc.oid +Join pg_catalog.pg_aggregate.aggserialfn => pg_catalog.pg_proc.oid +Join pg_catalog.pg_aggregate.aggdeserialfn => pg_catalog.pg_proc.oid Join pg_catalog.pg_aggregate.aggmtransfn => pg_catalog.pg_proc.oid Join pg_catalog.pg_aggregate.aggminvtransfn => pg_catalog.pg_proc.oid Join pg_catalog.pg_aggregate.aggmfinalfn => pg_catalog.pg_proc.oid @@ -102,6 +107,7 @@ Join pg_catalog.pg_index.indexrelid => pg_catalog.pg_class.oid Join pg_catalog.pg_index.indrelid => pg_catalog.pg_class.oid Join pg_catalog.pg_inherits.inhrelid => pg_catalog.pg_class.oid Join pg_catalog.pg_inherits.inhparent => pg_catalog.pg_class.oid +Join pg_catalog.pg_init_privs.classoid => pg_catalog.pg_class.oid Join pg_catalog.pg_language.lanowner => pg_catalog.pg_authid.oid Join pg_catalog.pg_language.lanplcallfoid => pg_catalog.pg_proc.oid Join pg_catalog.pg_language.laninline => pg_catalog.pg_proc.oid |