diff --git a/src/test/regress/expected/oidjoins.out b/src/test/regress/expected/oidjoins.out index 31e829556f..a42d3d89f0 100644 --- a/src/test/regress/expected/oidjoins.out +++ b/src/test/regress/expected/oidjoins.out @@ -1,403 +1,426 @@ -- --- OIDJOIN -- This is created by pgsql/contrib/findoidjoins/make_oidjoin_check -- -SELECT oid, pg_aggregate.aggtransfn1 - FROM pg_aggregate - WHERE pg_aggregate.aggtransfn1 != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggtransfn1); +SELECT oid, pg_aggregate.aggtransfn1 +FROM pg_aggregate +WHERE pg_aggregate.aggtransfn1 != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggtransfn1); oid | aggtransfn1 -----+------------- (0 rows) -SELECT oid, pg_aggregate.aggtransfn2 - FROM pg_aggregate - WHERE pg_aggregate.aggtransfn2 != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggtransfn2); +SELECT oid, pg_aggregate.aggtransfn2 +FROM pg_aggregate +WHERE pg_aggregate.aggtransfn2 != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggtransfn2); oid | aggtransfn2 -----+------------- (0 rows) -SELECT oid, pg_aggregate.aggfinalfn - FROM pg_aggregate - WHERE pg_aggregate.aggfinalfn != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggfinalfn); +SELECT oid, pg_aggregate.aggfinalfn +FROM pg_aggregate +WHERE pg_aggregate.aggfinalfn != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggfinalfn); oid | aggfinalfn -----+------------ (0 rows) -SELECT oid, pg_aggregate.aggbasetype - FROM pg_aggregate - WHERE pg_aggregate.aggbasetype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggbasetype); +SELECT oid, pg_aggregate.aggbasetype +FROM pg_aggregate +WHERE pg_aggregate.aggbasetype != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggbasetype); oid | aggbasetype -----+------------- (0 rows) -SELECT oid, pg_aggregate.aggtranstype1 - FROM pg_aggregate - WHERE pg_aggregate.aggtranstype1 != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggtranstype1); +SELECT oid, pg_aggregate.aggtranstype1 +FROM pg_aggregate +WHERE pg_aggregate.aggtranstype1 != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggtranstype1); oid | aggtranstype1 -----+--------------- (0 rows) -SELECT oid, pg_aggregate.aggtranstype2 - FROM pg_aggregate - WHERE pg_aggregate.aggtranstype2 != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggtranstype2); +SELECT oid, pg_aggregate.aggtranstype2 +FROM pg_aggregate +WHERE pg_aggregate.aggtranstype2 != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggtranstype2); oid | aggtranstype2 -----+--------------- (0 rows) -SELECT oid, pg_aggregate.aggfinaltype - FROM pg_aggregate - WHERE pg_aggregate.aggfinaltype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggfinaltype); +SELECT oid, pg_aggregate.aggfinaltype +FROM pg_aggregate +WHERE pg_aggregate.aggfinaltype != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggfinaltype); oid | aggfinaltype -----+-------------- (0 rows) -SELECT oid, pg_am.amgettuple - FROM pg_am - WHERE pg_am.amgettuple != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amgettuple); +SELECT oid, pg_am.amgettuple +FROM pg_am +WHERE pg_am.amgettuple != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amgettuple); oid | amgettuple -----+------------ (0 rows) -SELECT oid, pg_am.aminsert - FROM pg_am - WHERE pg_am.aminsert != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.aminsert); +SELECT oid, pg_am.aminsert +FROM pg_am +WHERE pg_am.aminsert != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.aminsert); oid | aminsert -----+---------- (0 rows) -SELECT oid, pg_am.amdelete - FROM pg_am - WHERE pg_am.amdelete != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amdelete); +SELECT oid, pg_am.amdelete +FROM pg_am +WHERE pg_am.amdelete != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amdelete); oid | amdelete -----+---------- (0 rows) -SELECT oid, pg_am.ambeginscan - FROM pg_am - WHERE pg_am.ambeginscan != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ambeginscan); +SELECT oid, pg_am.ambeginscan +FROM pg_am +WHERE pg_am.ambeginscan != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ambeginscan); oid | ambeginscan -----+------------- (0 rows) -SELECT oid, pg_am.amrescan - FROM pg_am - WHERE pg_am.amrescan != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amrescan); +SELECT oid, pg_am.amrescan +FROM pg_am +WHERE pg_am.amrescan != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amrescan); oid | amrescan -----+---------- (0 rows) -SELECT oid, pg_am.amendscan - FROM pg_am - WHERE pg_am.amendscan != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amendscan); +SELECT oid, pg_am.amendscan +FROM pg_am +WHERE pg_am.amendscan != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amendscan); oid | amendscan -----+----------- (0 rows) -SELECT oid, pg_am.ammarkpos - FROM pg_am - WHERE pg_am.ammarkpos != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ammarkpos); +SELECT oid, pg_am.ammarkpos +FROM pg_am +WHERE pg_am.ammarkpos != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ammarkpos); oid | ammarkpos -----+----------- (0 rows) -SELECT oid, pg_am.amrestrpos - FROM pg_am - WHERE pg_am.amrestrpos != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amrestrpos); +SELECT oid, pg_am.amrestrpos +FROM pg_am +WHERE pg_am.amrestrpos != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amrestrpos); oid | amrestrpos -----+------------ (0 rows) -SELECT oid, pg_am.ambuild - FROM pg_am - WHERE pg_am.ambuild != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ambuild); +SELECT oid, pg_am.ambuild +FROM pg_am +WHERE pg_am.ambuild != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ambuild); oid | ambuild -----+--------- (0 rows) -SELECT oid, pg_amop.amopid - FROM pg_amop - WHERE pg_amop.amopid != 0 AND - NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_amop.amopid); +SELECT oid, pg_am.amcostestimate +FROM pg_am +WHERE pg_am.amcostestimate != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amcostestimate); + oid | amcostestimate +-----+---------------- +(0 rows) + +SELECT oid, pg_amop.amopid +FROM pg_amop +WHERE pg_amop.amopid != 0 AND + NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_amop.amopid); oid | amopid -----+-------- (0 rows) -SELECT oid, pg_amop.amopclaid - FROM pg_amop - WHERE pg_amop.amopclaid != 0 AND - NOT EXISTS(SELECT * FROM pg_opclass AS t1 WHERE t1.oid = pg_amop.amopclaid); +SELECT oid, pg_amop.amopclaid +FROM pg_amop +WHERE pg_amop.amopclaid != 0 AND + NOT EXISTS(SELECT * FROM pg_opclass AS t1 WHERE t1.oid = pg_amop.amopclaid); oid | amopclaid -----+----------- (0 rows) -SELECT oid, pg_amop.amopopr - FROM pg_amop - WHERE pg_amop.amopopr != 0 AND - NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_amop.amopopr); +SELECT oid, pg_amop.amopopr +FROM pg_amop +WHERE pg_amop.amopopr != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_amop.amopopr); oid | amopopr -----+--------- (0 rows) -SELECT oid, pg_amop.amopselect - FROM pg_amop - WHERE pg_amop.amopselect != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_amop.amopselect); - oid | amopselect ------+------------ -(0 rows) - -SELECT oid, pg_amop.amopnpages - FROM pg_amop - WHERE pg_amop.amopnpages != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_amop.amopnpages); - oid | amopnpages ------+------------ -(0 rows) - -SELECT oid, pg_amproc.amid - FROM pg_amproc - WHERE pg_amproc.amid != 0 AND - NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_amproc.amid); +SELECT oid, pg_amproc.amid +FROM pg_amproc +WHERE pg_amproc.amid != 0 AND + NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_amproc.amid); oid | amid -----+------ (0 rows) -SELECT oid, pg_amproc.amopclaid - FROM pg_amproc - WHERE pg_amproc.amopclaid != 0 AND - NOT EXISTS(SELECT * FROM pg_opclass AS t1 WHERE t1.oid = pg_amproc.amopclaid); +SELECT oid, pg_amproc.amopclaid +FROM pg_amproc +WHERE pg_amproc.amopclaid != 0 AND + NOT EXISTS(SELECT * FROM pg_opclass AS t1 WHERE t1.oid = pg_amproc.amopclaid); oid | amopclaid -----+----------- (0 rows) -SELECT oid, pg_amproc.amproc - FROM pg_amproc - WHERE pg_amproc.amproc != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_amproc.amproc); +SELECT oid, pg_amproc.amproc +FROM pg_amproc +WHERE pg_amproc.amproc != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_amproc.amproc); oid | amproc -----+-------- (0 rows) -SELECT oid, pg_attribute.attrelid - FROM pg_attribute - WHERE pg_attribute.attrelid != 0 AND - NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_attribute.attrelid); +SELECT oid, pg_attribute.attrelid +FROM pg_attribute +WHERE pg_attribute.attrelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_attribute.attrelid); oid | attrelid -----+---------- (0 rows) -SELECT oid, pg_attribute.atttypid - FROM pg_attribute - WHERE pg_attribute.atttypid != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_attribute.atttypid); +SELECT oid, pg_attribute.atttypid +FROM pg_attribute +WHERE pg_attribute.atttypid != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_attribute.atttypid); oid | atttypid -----+---------- (0 rows) -SELECT oid, pg_class.reltype - FROM pg_class - WHERE pg_class.reltype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_class.reltype); +SELECT oid, pg_class.reltype +FROM pg_class +WHERE pg_class.reltype != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_class.reltype); oid | reltype -----+--------- (0 rows) -SELECT oid, pg_class.relam - FROM pg_class - WHERE pg_class.relam != 0 AND - NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_class.relam); +SELECT oid, pg_class.relam +FROM pg_class +WHERE pg_class.relam != 0 AND + NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_class.relam); oid | relam -----+------- (0 rows) -SELECT oid, pg_index.indexrelid - FROM pg_index - WHERE pg_index.indexrelid != 0 AND - NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_index.indexrelid); +SELECT oid, pg_index.indexrelid +FROM pg_index +WHERE pg_index.indexrelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_index.indexrelid); oid | indexrelid -----+------------ (0 rows) -SELECT oid, pg_index.indrelid - FROM pg_index - WHERE pg_index.indrelid != 0 AND - NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_index.indrelid); +SELECT oid, pg_index.indrelid +FROM pg_index +WHERE pg_index.indrelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_index.indrelid); oid | indrelid -----+---------- (0 rows) -SELECT oid, pg_opclass.opcdeftype - FROM pg_opclass - WHERE pg_opclass.opcdeftype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_opclass.opcdeftype); +SELECT oid, pg_opclass.opcdeftype +FROM pg_opclass +WHERE pg_opclass.opcdeftype != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_opclass.opcdeftype); oid | opcdeftype -----+------------ (0 rows) -SELECT oid, pg_operator.oprleft - FROM pg_operator - WHERE pg_operator.oprleft != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprleft); +SELECT oid, pg_operator.oprleft +FROM pg_operator +WHERE pg_operator.oprleft != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprleft); oid | oprleft -----+--------- (0 rows) -SELECT oid, pg_operator.oprright - FROM pg_operator - WHERE pg_operator.oprright != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprright); +SELECT oid, pg_operator.oprright +FROM pg_operator +WHERE pg_operator.oprright != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprright); oid | oprright -----+---------- (0 rows) -SELECT oid, pg_operator.oprresult - FROM pg_operator - WHERE pg_operator.oprresult != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprresult); +SELECT oid, pg_operator.oprresult +FROM pg_operator +WHERE pg_operator.oprresult != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprresult); oid | oprresult -----+----------- (0 rows) -SELECT oid, pg_operator.oprcom - FROM pg_operator - WHERE pg_operator.oprcom != 0 AND - NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprcom); +SELECT oid, pg_operator.oprcom +FROM pg_operator +WHERE pg_operator.oprcom != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprcom); oid | oprcom -----+-------- (0 rows) -SELECT oid, pg_operator.oprnegate - FROM pg_operator - WHERE pg_operator.oprnegate != 0 AND - NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprnegate); +SELECT oid, pg_operator.oprnegate +FROM pg_operator +WHERE pg_operator.oprnegate != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprnegate); oid | oprnegate -----+----------- (0 rows) -SELECT oid, pg_operator.oprlsortop - FROM pg_operator - WHERE pg_operator.oprlsortop != 0 AND - NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprlsortop); +SELECT oid, pg_operator.oprlsortop +FROM pg_operator +WHERE pg_operator.oprlsortop != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprlsortop); oid | oprlsortop -----+------------ (0 rows) -SELECT oid, pg_operator.oprrsortop - FROM pg_operator - WHERE pg_operator.oprrsortop != 0 AND - NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprrsortop); +SELECT oid, pg_operator.oprrsortop +FROM pg_operator +WHERE pg_operator.oprrsortop != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprrsortop); oid | oprrsortop -----+------------ (0 rows) -SELECT oid, pg_operator.oprcode - FROM pg_operator - WHERE pg_operator.oprcode != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_operator.oprcode); +SELECT oid, pg_operator.oprcode +FROM pg_operator +WHERE pg_operator.oprcode != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_operator.oprcode); oid | oprcode -----+--------- (0 rows) -SELECT oid, pg_operator.oprrest - FROM pg_operator - WHERE pg_operator.oprrest != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_operator.oprrest); +SELECT oid, pg_operator.oprrest +FROM pg_operator +WHERE pg_operator.oprrest != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_operator.oprrest); oid | oprrest -----+--------- (0 rows) -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_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); oid | oprjoin -----+--------- (0 rows) -SELECT oid, pg_proc.prolang - FROM pg_proc - WHERE pg_proc.prolang != 0 AND - NOT EXISTS(SELECT * FROM pg_language AS t1 WHERE t1.oid = pg_proc.prolang); +SELECT oid, pg_proc.prolang +FROM pg_proc +WHERE pg_proc.prolang != 0 AND + NOT EXISTS(SELECT * FROM pg_language AS t1 WHERE t1.oid = pg_proc.prolang); oid | prolang -----+--------- (0 rows) -SELECT oid, pg_proc.prorettype - FROM pg_proc - WHERE pg_proc.prorettype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_proc.prorettype); +SELECT oid, pg_proc.prorettype +FROM pg_proc +WHERE pg_proc.prorettype != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_proc.prorettype); oid | prorettype -----+------------ (0 rows) -SELECT oid, pg_rewrite.ev_class - FROM pg_rewrite - WHERE pg_rewrite.ev_class != 0 AND - NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_rewrite.ev_class); +SELECT oid, pg_rewrite.ev_class +FROM pg_rewrite +WHERE pg_rewrite.ev_class != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_rewrite.ev_class); oid | ev_class -----+---------- (0 rows) -SELECT oid, pg_type.typrelid - FROM pg_type - WHERE pg_type.typrelid != 0 AND - NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_type.typrelid); +SELECT oid, pg_statistic.starelid +FROM pg_statistic +WHERE pg_statistic.starelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_statistic.starelid); + oid | starelid +-----+---------- +(0 rows) + +SELECT oid, pg_statistic.staop +FROM pg_statistic +WHERE pg_statistic.staop != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_statistic.staop); + oid | staop +-----+------- +(0 rows) + +SELECT oid, pg_trigger.tgrelid +FROM pg_trigger +WHERE pg_trigger.tgrelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_trigger.tgrelid); + oid | tgrelid +-----+--------- +(0 rows) + +SELECT oid, pg_trigger.tgfoid +FROM pg_trigger +WHERE pg_trigger.tgfoid != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_trigger.tgfoid); + oid | tgfoid +-----+-------- +(0 rows) + +SELECT oid, pg_type.typrelid +FROM pg_type +WHERE pg_type.typrelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_type.typrelid); oid | typrelid -----+---------- (0 rows) -SELECT oid, pg_type.typelem - FROM pg_type - WHERE pg_type.typelem != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_type.typelem); +SELECT oid, pg_type.typelem +FROM pg_type +WHERE pg_type.typelem != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_type.typelem); oid | typelem -----+--------- (0 rows) -SELECT oid, pg_type.typinput - FROM pg_type - WHERE pg_type.typinput != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typinput); +SELECT oid, pg_type.typinput +FROM pg_type +WHERE pg_type.typinput != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typinput); oid | typinput -----+---------- (0 rows) -SELECT oid, pg_type.typoutput - FROM pg_type - WHERE pg_type.typoutput != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typoutput); +SELECT oid, pg_type.typoutput +FROM pg_type +WHERE pg_type.typoutput != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typoutput); oid | typoutput -----+----------- (0 rows) -SELECT oid, pg_type.typreceive - FROM pg_type - WHERE pg_type.typreceive != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typreceive); +SELECT oid, pg_type.typreceive +FROM pg_type +WHERE pg_type.typreceive != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typreceive); oid | typreceive -----+------------ (0 rows) -SELECT oid, pg_type.typsend - FROM pg_type - WHERE pg_type.typsend != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typsend); +SELECT oid, pg_type.typsend +FROM pg_type +WHERE pg_type.typsend != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typsend); oid | typsend -----+--------- (0 rows) diff --git a/src/test/regress/expected/opr_sanity.out b/src/test/regress/expected/opr_sanity.out index bede9c1ff9..5adf28926c 100644 --- a/src/test/regress/expected/opr_sanity.out +++ b/src/test/regress/expected/opr_sanity.out @@ -21,12 +21,15 @@ -- -- **************** pg_proc **************** -- Look for illegal values in pg_proc fields. +-- NOTE: currently there are a few pg_proc entries that have prorettype = 0. +-- Someday that ought to be cleaned up. SELECT p1.oid, p1.proname FROM pg_proc as p1 WHERE (p1.prolang = 0 OR p1.prorettype = 0 OR p1.pronargs < 0 OR p1.pronargs > 9) AND p1.proname !~ '^pl[^_]+_call_handler$' AND p1.proname !~ '^RI_FKey_' + AND p1.proname !~ 'costestimate$' AND p1.proname != 'update_pg_pwd'; oid | proname -----+--------- @@ -504,7 +507,7 @@ WHERE p1.aggfinalfn = p2.oid AND SELECT p1.oid FROM pg_amop as p1 WHERE p1.amopid = 0 OR p1.amopclaid = 0 OR p1.amopopr = 0 OR - p1.amopstrategy <= 0 OR p1.amopselect = 0 OR p1.amopnpages = 0; + p1.amopstrategy <= 0; oid ----- (0 rows) @@ -560,40 +563,6 @@ WHERE p1.amopopr = p2.oid AND p1.amopclaid = p3.oid AND -----+-----+---------+-----+--------- (0 rows) --- Check that amopselect points to a proc with the right signature --- to be an access-method selectivity estimator. --- The proc signature we want is: --- float8 proc(oid, oid, int2, , int4, int4, oid) -SELECT p1.oid, p2.oid, p2.proname -FROM pg_amop AS p1, pg_proc AS p2 -WHERE p1.amopselect = p2.oid AND - (p2.prorettype != 701 OR p2.proretset OR - p2.pronargs != 7 OR - p2.proargtypes[0] != 26 OR p2.proargtypes[1] != 26 OR - p2.proargtypes[2] != 21 OR p2.proargtypes[3] != 0 OR - p2.proargtypes[4] != 23 OR p2.proargtypes[5] != 23 OR - p2.proargtypes[6] != 26); - oid | oid | proname ------+-----+--------- -(0 rows) - --- Check that amopnpages points to a proc with the right signature --- to be an access-method page-count estimator. --- The proc signature we want is: --- float8 proc(oid, oid, int2, , int4, int4, oid) -SELECT p1.oid, p2.oid, p2.proname -FROM pg_amop AS p1, pg_proc AS p2 -WHERE p1.amopnpages = p2.oid AND - (p2.prorettype != 701 OR p2.proretset OR - p2.pronargs != 7 OR - p2.proargtypes[0] != 26 OR p2.proargtypes[1] != 26 OR - p2.proargtypes[2] != 21 OR p2.proargtypes[3] != 0 OR - p2.proargtypes[4] != 23 OR p2.proargtypes[5] != 23 OR - p2.proargtypes[6] != 26); - oid | oid | proname ------+-----+--------- -(0 rows) - -- **************** pg_amproc **************** -- Look for illegal values in pg_amproc fields SELECT p1.oid diff --git a/src/test/regress/sql/oidjoins.sql b/src/test/regress/sql/oidjoins.sql index 27b6034a33..7c6b4d99ef 100644 --- a/src/test/regress/sql/oidjoins.sql +++ b/src/test/regress/sql/oidjoins.sql @@ -1,206 +1,215 @@ -- --- OIDJOIN -- This is created by pgsql/contrib/findoidjoins/make_oidjoin_check -- - -SELECT oid, pg_aggregate.aggtransfn1 - FROM pg_aggregate - WHERE pg_aggregate.aggtransfn1 != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggtransfn1); -SELECT oid, pg_aggregate.aggtransfn2 - FROM pg_aggregate - WHERE pg_aggregate.aggtransfn2 != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggtransfn2); -SELECT oid, pg_aggregate.aggfinalfn - FROM pg_aggregate - WHERE pg_aggregate.aggfinalfn != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggfinalfn); -SELECT oid, pg_aggregate.aggbasetype - FROM pg_aggregate - WHERE pg_aggregate.aggbasetype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggbasetype); -SELECT oid, pg_aggregate.aggtranstype1 - FROM pg_aggregate - WHERE pg_aggregate.aggtranstype1 != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggtranstype1); -SELECT oid, pg_aggregate.aggtranstype2 - FROM pg_aggregate - WHERE pg_aggregate.aggtranstype2 != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggtranstype2); -SELECT oid, pg_aggregate.aggfinaltype - FROM pg_aggregate - WHERE pg_aggregate.aggfinaltype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggfinaltype); -SELECT oid, pg_am.amgettuple - FROM pg_am - WHERE pg_am.amgettuple != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amgettuple); -SELECT oid, pg_am.aminsert - FROM pg_am - WHERE pg_am.aminsert != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.aminsert); -SELECT oid, pg_am.amdelete - FROM pg_am - WHERE pg_am.amdelete != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amdelete); -SELECT oid, pg_am.ambeginscan - FROM pg_am - WHERE pg_am.ambeginscan != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ambeginscan); -SELECT oid, pg_am.amrescan - FROM pg_am - WHERE pg_am.amrescan != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amrescan); -SELECT oid, pg_am.amendscan - FROM pg_am - WHERE pg_am.amendscan != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amendscan); -SELECT oid, pg_am.ammarkpos - FROM pg_am - WHERE pg_am.ammarkpos != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ammarkpos); -SELECT oid, pg_am.amrestrpos - FROM pg_am - WHERE pg_am.amrestrpos != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amrestrpos); -SELECT oid, pg_am.ambuild - FROM pg_am - WHERE pg_am.ambuild != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ambuild); -SELECT oid, pg_amop.amopid - FROM pg_amop - WHERE pg_amop.amopid != 0 AND - NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_amop.amopid); -SELECT oid, pg_amop.amopclaid - FROM pg_amop - WHERE pg_amop.amopclaid != 0 AND - NOT EXISTS(SELECT * FROM pg_opclass AS t1 WHERE t1.oid = pg_amop.amopclaid); -SELECT oid, pg_amop.amopopr - FROM pg_amop - WHERE pg_amop.amopopr != 0 AND - NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_amop.amopopr); -SELECT oid, pg_amop.amopselect - FROM pg_amop - WHERE pg_amop.amopselect != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_amop.amopselect); -SELECT oid, pg_amop.amopnpages - FROM pg_amop - WHERE pg_amop.amopnpages != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_amop.amopnpages); -SELECT oid, pg_amproc.amid - FROM pg_amproc - WHERE pg_amproc.amid != 0 AND - NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_amproc.amid); -SELECT oid, pg_amproc.amopclaid - FROM pg_amproc - WHERE pg_amproc.amopclaid != 0 AND - NOT EXISTS(SELECT * FROM pg_opclass AS t1 WHERE t1.oid = pg_amproc.amopclaid); -SELECT oid, pg_amproc.amproc - FROM pg_amproc - WHERE pg_amproc.amproc != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_amproc.amproc); -SELECT oid, pg_attribute.attrelid - FROM pg_attribute - WHERE pg_attribute.attrelid != 0 AND - NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_attribute.attrelid); -SELECT oid, pg_attribute.atttypid - FROM pg_attribute - WHERE pg_attribute.atttypid != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_attribute.atttypid); -SELECT oid, pg_class.reltype - FROM pg_class - WHERE pg_class.reltype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_class.reltype); -SELECT oid, pg_class.relam - FROM pg_class - WHERE pg_class.relam != 0 AND - NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_class.relam); -SELECT oid, pg_index.indexrelid - FROM pg_index - WHERE pg_index.indexrelid != 0 AND - NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_index.indexrelid); -SELECT oid, pg_index.indrelid - FROM pg_index - WHERE pg_index.indrelid != 0 AND - NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_index.indrelid); -SELECT oid, pg_opclass.opcdeftype - FROM pg_opclass - WHERE pg_opclass.opcdeftype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_opclass.opcdeftype); -SELECT oid, pg_operator.oprleft - FROM pg_operator - WHERE pg_operator.oprleft != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprleft); -SELECT oid, pg_operator.oprright - FROM pg_operator - WHERE pg_operator.oprright != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprright); -SELECT oid, pg_operator.oprresult - FROM pg_operator - WHERE pg_operator.oprresult != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprresult); -SELECT oid, pg_operator.oprcom - FROM pg_operator - WHERE pg_operator.oprcom != 0 AND - NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprcom); -SELECT oid, pg_operator.oprnegate - FROM pg_operator - WHERE pg_operator.oprnegate != 0 AND - NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprnegate); -SELECT oid, pg_operator.oprlsortop - FROM pg_operator - WHERE pg_operator.oprlsortop != 0 AND - NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprlsortop); -SELECT oid, pg_operator.oprrsortop - FROM pg_operator - WHERE pg_operator.oprrsortop != 0 AND - NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprrsortop); -SELECT oid, pg_operator.oprcode - FROM pg_operator - WHERE pg_operator.oprcode != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_operator.oprcode); -SELECT oid, pg_operator.oprrest - FROM pg_operator - WHERE pg_operator.oprrest != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_operator.oprrest); -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_proc.prolang - FROM pg_proc - WHERE pg_proc.prolang != 0 AND - NOT EXISTS(SELECT * FROM pg_language AS t1 WHERE t1.oid = pg_proc.prolang); -SELECT oid, pg_proc.prorettype - FROM pg_proc - WHERE pg_proc.prorettype != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_proc.prorettype); -SELECT oid, pg_rewrite.ev_class - FROM pg_rewrite - WHERE pg_rewrite.ev_class != 0 AND - NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_rewrite.ev_class); -SELECT oid, pg_type.typrelid - FROM pg_type - WHERE pg_type.typrelid != 0 AND - NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_type.typrelid); -SELECT oid, pg_type.typelem - FROM pg_type - WHERE pg_type.typelem != 0 AND - NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_type.typelem); -SELECT oid, pg_type.typinput - FROM pg_type - WHERE pg_type.typinput != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typinput); -SELECT oid, pg_type.typoutput - FROM pg_type - WHERE pg_type.typoutput != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typoutput); -SELECT oid, pg_type.typreceive - FROM pg_type - WHERE pg_type.typreceive != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typreceive); -SELECT oid, pg_type.typsend - FROM pg_type - WHERE pg_type.typsend != 0 AND - NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typsend); - +SELECT oid, pg_aggregate.aggtransfn1 +FROM pg_aggregate +WHERE pg_aggregate.aggtransfn1 != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggtransfn1); +SELECT oid, pg_aggregate.aggtransfn2 +FROM pg_aggregate +WHERE pg_aggregate.aggtransfn2 != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggtransfn2); +SELECT oid, pg_aggregate.aggfinalfn +FROM pg_aggregate +WHERE pg_aggregate.aggfinalfn != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_aggregate.aggfinalfn); +SELECT oid, pg_aggregate.aggbasetype +FROM pg_aggregate +WHERE pg_aggregate.aggbasetype != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggbasetype); +SELECT oid, pg_aggregate.aggtranstype1 +FROM pg_aggregate +WHERE pg_aggregate.aggtranstype1 != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggtranstype1); +SELECT oid, pg_aggregate.aggtranstype2 +FROM pg_aggregate +WHERE pg_aggregate.aggtranstype2 != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggtranstype2); +SELECT oid, pg_aggregate.aggfinaltype +FROM pg_aggregate +WHERE pg_aggregate.aggfinaltype != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_aggregate.aggfinaltype); +SELECT oid, pg_am.amgettuple +FROM pg_am +WHERE pg_am.amgettuple != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amgettuple); +SELECT oid, pg_am.aminsert +FROM pg_am +WHERE pg_am.aminsert != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.aminsert); +SELECT oid, pg_am.amdelete +FROM pg_am +WHERE pg_am.amdelete != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amdelete); +SELECT oid, pg_am.ambeginscan +FROM pg_am +WHERE pg_am.ambeginscan != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ambeginscan); +SELECT oid, pg_am.amrescan +FROM pg_am +WHERE pg_am.amrescan != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amrescan); +SELECT oid, pg_am.amendscan +FROM pg_am +WHERE pg_am.amendscan != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amendscan); +SELECT oid, pg_am.ammarkpos +FROM pg_am +WHERE pg_am.ammarkpos != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ammarkpos); +SELECT oid, pg_am.amrestrpos +FROM pg_am +WHERE pg_am.amrestrpos != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amrestrpos); +SELECT oid, pg_am.ambuild +FROM pg_am +WHERE pg_am.ambuild != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.ambuild); +SELECT oid, pg_am.amcostestimate +FROM pg_am +WHERE pg_am.amcostestimate != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_am.amcostestimate); +SELECT oid, pg_amop.amopid +FROM pg_amop +WHERE pg_amop.amopid != 0 AND + NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_amop.amopid); +SELECT oid, pg_amop.amopclaid +FROM pg_amop +WHERE pg_amop.amopclaid != 0 AND + NOT EXISTS(SELECT * FROM pg_opclass AS t1 WHERE t1.oid = pg_amop.amopclaid); +SELECT oid, pg_amop.amopopr +FROM pg_amop +WHERE pg_amop.amopopr != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_amop.amopopr); +SELECT oid, pg_amproc.amid +FROM pg_amproc +WHERE pg_amproc.amid != 0 AND + NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_amproc.amid); +SELECT oid, pg_amproc.amopclaid +FROM pg_amproc +WHERE pg_amproc.amopclaid != 0 AND + NOT EXISTS(SELECT * FROM pg_opclass AS t1 WHERE t1.oid = pg_amproc.amopclaid); +SELECT oid, pg_amproc.amproc +FROM pg_amproc +WHERE pg_amproc.amproc != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_amproc.amproc); +SELECT oid, pg_attribute.attrelid +FROM pg_attribute +WHERE pg_attribute.attrelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_attribute.attrelid); +SELECT oid, pg_attribute.atttypid +FROM pg_attribute +WHERE pg_attribute.atttypid != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_attribute.atttypid); +SELECT oid, pg_class.reltype +FROM pg_class +WHERE pg_class.reltype != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_class.reltype); +SELECT oid, pg_class.relam +FROM pg_class +WHERE pg_class.relam != 0 AND + NOT EXISTS(SELECT * FROM pg_am AS t1 WHERE t1.oid = pg_class.relam); +SELECT oid, pg_index.indexrelid +FROM pg_index +WHERE pg_index.indexrelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_index.indexrelid); +SELECT oid, pg_index.indrelid +FROM pg_index +WHERE pg_index.indrelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_index.indrelid); +SELECT oid, pg_opclass.opcdeftype +FROM pg_opclass +WHERE pg_opclass.opcdeftype != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_opclass.opcdeftype); +SELECT oid, pg_operator.oprleft +FROM pg_operator +WHERE pg_operator.oprleft != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprleft); +SELECT oid, pg_operator.oprright +FROM pg_operator +WHERE pg_operator.oprright != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprright); +SELECT oid, pg_operator.oprresult +FROM pg_operator +WHERE pg_operator.oprresult != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_operator.oprresult); +SELECT oid, pg_operator.oprcom +FROM pg_operator +WHERE pg_operator.oprcom != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprcom); +SELECT oid, pg_operator.oprnegate +FROM pg_operator +WHERE pg_operator.oprnegate != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprnegate); +SELECT oid, pg_operator.oprlsortop +FROM pg_operator +WHERE pg_operator.oprlsortop != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprlsortop); +SELECT oid, pg_operator.oprrsortop +FROM pg_operator +WHERE pg_operator.oprrsortop != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_operator.oprrsortop); +SELECT oid, pg_operator.oprcode +FROM pg_operator +WHERE pg_operator.oprcode != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_operator.oprcode); +SELECT oid, pg_operator.oprrest +FROM pg_operator +WHERE pg_operator.oprrest != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_operator.oprrest); +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_proc.prolang +FROM pg_proc +WHERE pg_proc.prolang != 0 AND + NOT EXISTS(SELECT * FROM pg_language AS t1 WHERE t1.oid = pg_proc.prolang); +SELECT oid, pg_proc.prorettype +FROM pg_proc +WHERE pg_proc.prorettype != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_proc.prorettype); +SELECT oid, pg_rewrite.ev_class +FROM pg_rewrite +WHERE pg_rewrite.ev_class != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_rewrite.ev_class); +SELECT oid, pg_statistic.starelid +FROM pg_statistic +WHERE pg_statistic.starelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_statistic.starelid); +SELECT oid, pg_statistic.staop +FROM pg_statistic +WHERE pg_statistic.staop != 0 AND + NOT EXISTS(SELECT * FROM pg_operator AS t1 WHERE t1.oid = pg_statistic.staop); +SELECT oid, pg_trigger.tgrelid +FROM pg_trigger +WHERE pg_trigger.tgrelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_trigger.tgrelid); +SELECT oid, pg_trigger.tgfoid +FROM pg_trigger +WHERE pg_trigger.tgfoid != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_trigger.tgfoid); +SELECT oid, pg_type.typrelid +FROM pg_type +WHERE pg_type.typrelid != 0 AND + NOT EXISTS(SELECT * FROM pg_class AS t1 WHERE t1.oid = pg_type.typrelid); +SELECT oid, pg_type.typelem +FROM pg_type +WHERE pg_type.typelem != 0 AND + NOT EXISTS(SELECT * FROM pg_type AS t1 WHERE t1.oid = pg_type.typelem); +SELECT oid, pg_type.typinput +FROM pg_type +WHERE pg_type.typinput != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typinput); +SELECT oid, pg_type.typoutput +FROM pg_type +WHERE pg_type.typoutput != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typoutput); +SELECT oid, pg_type.typreceive +FROM pg_type +WHERE pg_type.typreceive != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typreceive); +SELECT oid, pg_type.typsend +FROM pg_type +WHERE pg_type.typsend != 0 AND + NOT EXISTS(SELECT * FROM pg_proc AS t1 WHERE t1.oid = pg_type.typsend);