Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Postgres FD Implementation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Abuhujair Javed
Postgres FD Implementation
Commits
978d2385
Commit
978d2385
authored
Jan 22, 2000
by
Tom Lane
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update regress tests for change of pg_am/pg_amop.
parent
71ed7eb4
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
448 additions
and
447 deletions
+448
-447
src/test/regress/expected/oidjoins.out
src/test/regress/expected/oidjoins.out
+232
-209
src/test/regress/expected/opr_sanity.out
src/test/regress/expected/opr_sanity.out
+4
-35
src/test/regress/sql/oidjoins.sql
src/test/regress/sql/oidjoins.sql
+212
-203
No files found.
src/test/regress/expected/oidjoins.out
View file @
978d2385
--
-- 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)
...
...
src/test/regress/expected/opr_sanity.out
View file @
978d2385
...
...
@@ -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, <any>, 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, <any>, 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
...
...
src/test/regress/sql/oidjoins.sql
View file @
978d2385
--
-- 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
);
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment