Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitcbb5e23

Browse files
committed
Update oidjoins regression test for 9.4.
Now that we're pretty much feature-frozen, it's time to update the checkson system catalog foreign-key references.(It looks like we missed doing this altogether for 9.3. Sigh.)
1 parentef15831 commitcbb5e23

File tree

4 files changed

+97
-5
lines changed

4 files changed

+97
-5
lines changed

‎src/test/regress/expected/oidjoins.out

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,30 @@ WHEREaggfinalfn != 0 AND
2525
------+------------
2626
(0 rows)
2727

28+
SELECTctid, aggmtransfn
29+
FROMpg_catalog.pg_aggregate fk
30+
WHEREaggmtransfn != 0 AND
31+
NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.aggmtransfn);
32+
ctid | aggmtransfn
33+
------+-------------
34+
(0 rows)
35+
36+
SELECTctid, aggminvtransfn
37+
FROMpg_catalog.pg_aggregate fk
38+
WHEREaggminvtransfn != 0 AND
39+
NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.aggminvtransfn);
40+
ctid | aggminvtransfn
41+
------+----------------
42+
(0 rows)
43+
44+
SELECTctid, aggmfinalfn
45+
FROMpg_catalog.pg_aggregate fk
46+
WHEREaggmfinalfn != 0 AND
47+
NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.aggmfinalfn);
48+
ctid | aggmfinalfn
49+
------+-------------
50+
(0 rows)
51+
2852
SELECTctid, aggsortop
2953
FROMpg_catalog.pg_aggregate fk
3054
WHEREaggsortop != 0 AND
@@ -41,6 +65,14 @@ WHEREaggtranstype != 0 AND
4165
------+--------------
4266
(0 rows)
4367

68+
SELECTctid, aggmtranstype
69+
FROMpg_catalog.pg_aggregate fk
70+
WHEREaggmtranstype != 0 AND
71+
NOT EXISTS(SELECT 1 FROM pg_catalog.pg_type pk WHERE pk.oid = fk.aggmtranstype);
72+
ctid | aggmtranstype
73+
------+---------------
74+
(0 rows)
75+
4476
SELECTctid, amkeytype
4577
FROMpg_catalog.pg_am fk
4678
WHEREamkeytype != 0 AND
@@ -145,6 +177,14 @@ WHEREamvacuumcleanup != 0 AND
145177
------+-----------------
146178
(0 rows)
147179

180+
SELECTctid, amcanreturn
181+
FROMpg_catalog.pg_am fk
182+
WHEREamcanreturn != 0 AND
183+
NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.amcanreturn);
184+
ctid | amcanreturn
185+
------+-------------
186+
(0 rows)
187+
148188
SELECTctid, amcostestimate
149189
FROMpg_catalog.pg_am fk
150190
WHEREamcostestimate != 0 AND
@@ -881,6 +921,22 @@ WHEREstaop3 != 0 AND
881921
------+--------
882922
(0 rows)
883923

924+
SELECTctid, staop4
925+
FROMpg_catalog.pg_statistic fk
926+
WHEREstaop4 != 0 AND
927+
NOT EXISTS(SELECT 1 FROM pg_catalog.pg_operator pk WHERE pk.oid = fk.staop4);
928+
ctid | staop4
929+
------+--------
930+
(0 rows)
931+
932+
SELECTctid, staop5
933+
FROMpg_catalog.pg_statistic fk
934+
WHEREstaop5 != 0 AND
935+
NOT EXISTS(SELECT 1 FROM pg_catalog.pg_operator pk WHERE pk.oid = fk.staop5);
936+
ctid | staop5
937+
------+--------
938+
(0 rows)
939+
884940
SELECTctid, spcowner
885941
FROMpg_catalog.pg_tablespace fk
886942
WHEREspcowner != 0 AND

‎src/test/regress/sql/oidjoins.sql

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,18 @@ SELECTctid, aggfinalfn
1313
FROMpg_catalog.pg_aggregate fk
1414
WHEREaggfinalfn!=0AND
1515
NOT EXISTS(SELECT1FROMpg_catalog.pg_proc pkWHEREpk.oid=fk.aggfinalfn);
16+
SELECTctid, aggmtransfn
17+
FROMpg_catalog.pg_aggregate fk
18+
WHEREaggmtransfn!=0AND
19+
NOT EXISTS(SELECT1FROMpg_catalog.pg_proc pkWHEREpk.oid=fk.aggmtransfn);
20+
SELECTctid, aggminvtransfn
21+
FROMpg_catalog.pg_aggregate fk
22+
WHEREaggminvtransfn!=0AND
23+
NOT EXISTS(SELECT1FROMpg_catalog.pg_proc pkWHEREpk.oid=fk.aggminvtransfn);
24+
SELECTctid, aggmfinalfn
25+
FROMpg_catalog.pg_aggregate fk
26+
WHEREaggmfinalfn!=0AND
27+
NOT EXISTS(SELECT1FROMpg_catalog.pg_proc pkWHEREpk.oid=fk.aggmfinalfn);
1628
SELECTctid, aggsortop
1729
FROMpg_catalog.pg_aggregate fk
1830
WHEREaggsortop!=0AND
@@ -21,6 +33,10 @@ SELECTctid, aggtranstype
2133
FROMpg_catalog.pg_aggregate fk
2234
WHEREaggtranstype!=0AND
2335
NOT EXISTS(SELECT1FROMpg_catalog.pg_type pkWHEREpk.oid=fk.aggtranstype);
36+
SELECTctid, aggmtranstype
37+
FROMpg_catalog.pg_aggregate fk
38+
WHEREaggmtranstype!=0AND
39+
NOT EXISTS(SELECT1FROMpg_catalog.pg_type pkWHEREpk.oid=fk.aggmtranstype);
2440
SELECTctid, amkeytype
2541
FROMpg_catalog.pg_am fk
2642
WHEREamkeytype!=0AND
@@ -73,6 +89,10 @@ SELECTctid, amvacuumcleanup
7389
FROMpg_catalog.pg_am fk
7490
WHEREamvacuumcleanup!=0AND
7591
NOT EXISTS(SELECT1FROMpg_catalog.pg_proc pkWHEREpk.oid=fk.amvacuumcleanup);
92+
SELECTctid, amcanreturn
93+
FROMpg_catalog.pg_am fk
94+
WHEREamcanreturn!=0AND
95+
NOT EXISTS(SELECT1FROMpg_catalog.pg_proc pkWHEREpk.oid=fk.amcanreturn);
7696
SELECTctid, amcostestimate
7797
FROMpg_catalog.pg_am fk
7898
WHEREamcostestimate!=0AND
@@ -441,6 +461,14 @@ SELECTctid, staop3
441461
FROMpg_catalog.pg_statistic fk
442462
WHEREstaop3!=0AND
443463
NOT EXISTS(SELECT1FROMpg_catalog.pg_operator pkWHEREpk.oid=fk.staop3);
464+
SELECTctid, staop4
465+
FROMpg_catalog.pg_statistic fk
466+
WHEREstaop4!=0AND
467+
NOT EXISTS(SELECT1FROMpg_catalog.pg_operator pkWHEREpk.oid=fk.staop4);
468+
SELECTctid, staop5
469+
FROMpg_catalog.pg_statistic fk
470+
WHEREstaop5!=0AND
471+
NOT EXISTS(SELECT1FROMpg_catalog.pg_operator pkWHEREpk.oid=fk.staop5);
444472
SELECTctid, spcowner
445473
FROMpg_catalog.pg_tablespace fk
446474
WHEREspcowner!=0AND

‎src/tools/findoidjoins/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/findoidjoins

‎src/tools/findoidjoins/README

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ findoidjoins
55

66
This program scans a database and prints oid fields (also reg* fields)
77
and the tables they join to. It is normally used to check the system
8-
catalog join relationships (shown below for 9.2devel as of2011-11-14).
8+
catalog join relationships (shown below for 9.4devel as of2014-04-16).
99

1010
Historically this has been run against an empty database such as template1,
1111
but there's a problem with that approach: some of the catalogs are empty
@@ -16,7 +16,7 @@ catalogs in interesting ways.
1616
Note that unexpected matches may indicate bogus entries in system tables;
1717
don't accept a peculiar match without question. In particular, a field
1818
shown as joining to more than one target table is probably messed up.
19-
In 9.2devel, the *only* fields that should join to more than one target
19+
In 9.4devel, the *only* fields that should join to more than one target
2020
table are pg_description.objoid, pg_depend.objid, pg_depend.refobjid,
2121
pg_shdescription.objoid, pg_shdepend.objid, and pg_shdepend.refobjid.
2222
(Running make_oidjoins_check is an easy way to spot fields joining to more
@@ -33,20 +33,24 @@ regression test. The oidjoins test should be updated after any
3333
revision in the patterns of cross-links between system tables.
3434
(Typically we update it at the end of each development cycle.)
3535

36-
NOTE: as of 9.2devel, make_oidjoins_check produces two bogus join checks:
36+
NOTE: as of 9.4devel, make_oidjoins_check produces two bogus join checks:
3737
Join pg_catalog.pg_class.relfilenode => pg_catalog.pg_class.oid
3838
Join pg_catalog.pg_database.datlastsysoid => pg_catalog.pg_database.oid
39-
These are artifacts and should not be added to the oidjoinsregress test.
39+
These are artifacts and should not be added to the oidjoinsregression test.
4040
You might also get output for pg_shdepend.refobjid and pg_shdescription.objoid,
41-
neither of which should be added to theregress test.
41+
neither of which should be added to theregression test.
4242

4343
---------------------------------------------------------------------------
4444

4545
Join pg_catalog.pg_aggregate.aggfnoid => pg_catalog.pg_proc.oid
4646
Join pg_catalog.pg_aggregate.aggtransfn => pg_catalog.pg_proc.oid
4747
Join pg_catalog.pg_aggregate.aggfinalfn => pg_catalog.pg_proc.oid
48+
Join pg_catalog.pg_aggregate.aggmtransfn => pg_catalog.pg_proc.oid
49+
Join pg_catalog.pg_aggregate.aggminvtransfn => pg_catalog.pg_proc.oid
50+
Join pg_catalog.pg_aggregate.aggmfinalfn => pg_catalog.pg_proc.oid
4851
Join pg_catalog.pg_aggregate.aggsortop => pg_catalog.pg_operator.oid
4952
Join pg_catalog.pg_aggregate.aggtranstype => pg_catalog.pg_type.oid
53+
Join pg_catalog.pg_aggregate.aggmtranstype => pg_catalog.pg_type.oid
5054
Join pg_catalog.pg_am.amkeytype => pg_catalog.pg_type.oid
5155
Join pg_catalog.pg_am.aminsert => pg_catalog.pg_proc.oid
5256
Join pg_catalog.pg_am.ambeginscan => pg_catalog.pg_proc.oid
@@ -60,6 +64,7 @@ Join pg_catalog.pg_am.ambuild => pg_catalog.pg_proc.oid
6064
Join pg_catalog.pg_am.ambuildempty => pg_catalog.pg_proc.oid
6165
Join pg_catalog.pg_am.ambulkdelete => pg_catalog.pg_proc.oid
6266
Join pg_catalog.pg_am.amvacuumcleanup => pg_catalog.pg_proc.oid
67+
Join pg_catalog.pg_am.amcanreturn => pg_catalog.pg_proc.oid
6368
Join pg_catalog.pg_am.amcostestimate => pg_catalog.pg_proc.oid
6469
Join pg_catalog.pg_am.amoptions => pg_catalog.pg_proc.oid
6570
Join pg_catalog.pg_amop.amopfamily => pg_catalog.pg_opfamily.oid
@@ -152,6 +157,8 @@ Join pg_catalog.pg_statistic.starelid => pg_catalog.pg_class.oid
152157
Join pg_catalog.pg_statistic.staop1 => pg_catalog.pg_operator.oid
153158
Join pg_catalog.pg_statistic.staop2 => pg_catalog.pg_operator.oid
154159
Join pg_catalog.pg_statistic.staop3 => pg_catalog.pg_operator.oid
160+
Join pg_catalog.pg_statistic.staop4 => pg_catalog.pg_operator.oid
161+
Join pg_catalog.pg_statistic.staop5 => pg_catalog.pg_operator.oid
155162
Join pg_catalog.pg_tablespace.spcowner => pg_catalog.pg_authid.oid
156163
Join pg_catalog.pg_trigger.tgrelid => pg_catalog.pg_class.oid
157164
Join pg_catalog.pg_trigger.tgfoid => pg_catalog.pg_proc.oid

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp