8000 Update oidjoins regression test to match git HEAD. · melor/postgres@4165d5b · GitHub
[go: up one dir, main page]

Skip to content

Commit 4165d5b

Browse files
committed
Update oidjoins regression test to match git HEAD.
This is mostly to add some sanity checking for the pg_range catalog.
1 parent 4f9e330 commit 4165d5b

File tree

3 files changed

+107
-3
lines changed
  • src
    • test/regress
      • < 10000 div class="PRIVATE_TreeView-item-level-line prc-TreeView-TreeViewItemLevelLine-KPSSL">
        expected
  • sql
  • tools/findoidjoins
  • 3 files changed

    +107
    -3
    lines changed

    src/test/regress/expected/oidjoins.out

    Lines changed: 64 additions & 0 deletions
    Original file line numberDiff line numberDiff line change
    @@ -769,6 +769,14 @@ WHERE provariadic != 0 AND
    769769
    ------+-------------
    770770
    (0 rows)
    771771

    772+
    SELECT ctid, protransform
    773+
    FROM pg_catalog.pg_proc fk
    774+
    WHERE protransform != 0 AND
    775+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.protransform);
    776+
    ctid | protransform
    777+
    ------+--------------
    778+
    (0 rows)
    779+
    772780
    SELECT ctid, prorettype
    773781
    FROM pg_catalog.pg_proc fk
    774782
    WHERE prorettype != 0 AND
    @@ -777,6 +785,54 @@ WHERE prorettype != 0 AND
    777785
    ------+------------
    778786
    (0 rows)
    779787

    788+
    SELECT ctid, rngtypid
    789+
    FROM pg_catalog.pg_range fk
    790+
    WHERE rngtypid != 0 AND
    791+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_type pk WHERE pk.oid = fk.rngtypid);
    792+
    ctid | rngtypid
    793+
    ------+----------
    794+
    (0 rows)
    795+
    796+
    SELECT ctid, rngsubtype
    797+
    FROM pg_catalog.pg_range fk
    798+
    WHERE rngsubtype != 0 AND
    799+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_type pk WHERE pk.oid = fk.rngsubtype);
    800+
    ctid | rngsubtype
    801+
    ------+------------
    802+
    (0 rows)
    803+
    804+
    SELECT ctid, rngcollation
    805+
    FROM pg_catalog.pg_range fk
    806+
    WHERE rngcollation != 0 AND
    807+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_collation pk WHERE pk.oid = fk.rngcollation);
    808+
    ctid | rngcollation
    809+
    ------+--------------
    810+
    (0 rows)
    811+
    812+
    SELECT ctid, rngsubopc
    813+
    FROM pg_catalog.pg_range fk
    814+
    WHERE rngsubopc != 0 AND
    815+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_opclass pk WHERE pk.oid = fk.rngsubopc);
    816+
    ctid | rngsubopc
    817+
    ------+-----------
    818+
    (0 rows)
    819+
    820+
    SELECT ctid, rngcanonical
    821+
    FROM pg_catalog.pg_range fk
    822+
    WHERE rngcanonical != 0 AND
    823+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.rngcanonical);
    824+
    ctid | rngcanonical
    825+
    ------+--------------
    826+
    (0 rows)
    827+
    828+
    SELECT ctid, rngsubdiff
    829+
    FROM pg_catalog.pg_range fk
    830+
    WHERE rngsubdiff != 0 AND
    831+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.rngsubdiff);
    832+
    ctid | rngsubdiff
    833+
    ------+------------
    834+
    (0 rows)
    835+
    780836
    SELECT ctid, ev_class
    781837
    FROM pg_catalog.pg_rewrite fk
    782838
    WHERE ev_class != 0 AND
    @@ -1153,6 +1209,14 @@ WHERE conffeqop != 0 AND
    11531209
    ------+-----------
    11541210
    (0 rows)
    11551211

    1212+
    SELECT ctid, conexclop
    1213+
    FROM (SELECT ctid, unnest(conexclop) AS conexclop FROM pg_catalog.pg_constraint) fk
    1214+
    WHERE conexclop != 0 AND
    1215+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_operator pk WHERE pk.oid = fk.conexclop);
    1216+
    ctid | conexclop
    1217+
    ------+-----------
    1218+
    (0 rows)
    1219+
    11561220
    SELECT ctid, proallargtypes
    11571221
    FROM (SELECT ctid, unnest(proallargtypes) AS proallargtypes FROM pg_catalog.pg_proc) fk
    11581222
    WHERE proallargtypes != 0 AND

    src/test/regress/sql/oidjoins.sql

    Lines changed: 32 additions & 0 deletions
    Original file line numberDiff line numberDiff line change
    @@ -385,10 +385,38 @@ SELECT ctid, provariadic
    385385
    FROM pg_catalog.pg_proc fk
    386386
    WHERE provariadic != 0 AND
    387387
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_type pk WHERE pk.oid = fk.provariadic);
    388+
    SELECT ctid, protransform
    389+
    FROM pg_catalog.pg_proc fk
    390+
    WHERE protransform != 0 AND
    391+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.protransform);
    388392
    SELECT ctid, prorettype
    389393
    FROM pg_catalog.pg_proc fk
    390394
    WHERE prorettype != 0 AND
    391395
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_type pk WHERE pk.oid = fk.prorettype);
    396+
    SELECT ctid, rngtypid
    397+
    FROM pg_catalog.pg_range fk
    398+
    WHERE rngtypid != 0 AND
    399+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_type pk WHERE pk.oid = fk.rngtypid);
    400+
    SELECT ctid, rngsubtype
    401+
    FROM pg_catalog.pg_range fk
    402+
    WHERE rngsubtype != 0 AND
    403+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_type pk WHERE pk.oid = fk.rngsubtype);
    404+
    SELECT ctid, rngcollation
    405+
    FROM pg_catalog.pg_range fk
    406+
    WHERE rngcollation != 0 AND
    407+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_collation pk WHERE pk.oid = fk.rngcollation);
    408+
    SELECT ctid, rngsubopc
    409+
    FROM pg_catalog.pg_range fk
    410+
    WHERE rngsubopc != 0 AND
    411+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_opclass pk WHERE pk.oid = fk.rngsubopc);
    412+
    SELECT ctid, rngcanonical
    413+
    FROM pg_catalog.pg_range fk
    414+
    WHERE rngcanonical != 0 AND
    415+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.rngcanonical);
    416+
    SELECT ctid, rngsubdiff
    417+
    FROM pg_catalog.pg_range fk
    418+
    WHERE rngsubdiff != 0 AND
    419+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_proc pk WHERE pk.oid = fk.rngsubdiff);
    392420
    SELECT ctid, ev_class
    393421
    FROM pg_catalog.pg_rewrite fk
    394422
    WHERE ev_class != 0 AND
    @@ -577,6 +605,10 @@ SELECT ctid, conffeqop
    577605
    FROM (SELECT ctid, unnest(conffeqop) AS conffeqop FROM pg_catalog.pg_constraint) fk
    578606
    WHERE conffeqop != 0 AND
    579607
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_operator pk WHERE pk.oid = fk.conffeqop);
    608+
    SELECT ctid, conexclop
    609+
    FROM (SELECT ctid, unnest(conexclop) AS conexclop FROM pg_catalog.pg_constraint) fk
    610+
    WHERE conexclop != 0 AND
    611+
    NOT EXISTS(SELECT 1 FROM pg_catalog.pg_operator pk WHERE pk.oid = fk.conexclop);
    580612
    SELECT ctid, proallargtypes
    581613
    FROM (SELECT ctid, unnest(proallargtypes) AS proallargtypes FROM pg_catalog.pg_proc) fk
    582614
    WHERE proallargtypes != 0 AND

    src/tools/findoidjoins/README

    Lines changed: 11 additions & 3 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.1devel).
    8+
    catalog join relationships (shown below for 9.2devel as of 2011-11-14).
    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.1devel, the *only* fields that should join to more than one target
    19+
    In 9.2devel, 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,7 +33,7 @@ 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.1devel, make_oidjoins_check produces two bogus join checks:
    36+
    NOTE: as of 9.2devel, 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
    3939
    These are artifacts and should not be added to the oidjoins regress test.
    @@ -138,7 +138,14 @@ Join pg_catalog.pg_proc.pronamespace => pg_catalog.pg_namespace.oid
    138138
    Join pg_catalog.pg_proc.proowner => pg_catalog.pg_authid.oid
    139139
    Join pg_catalog.pg_proc.prolang => pg_catalog.pg_language.oid
    140140
    Join pg_catalog.pg_proc.provariadic => pg_catalog.pg_type.oid
    141+
    Join pg_catalog.pg_proc.protransform => pg_catalog.pg_proc.oid
    141142
    Join pg_catalog.pg_proc.prorettype => pg_catalog.pg_type.oid
    143+
    Join pg_catalog.pg_range.rngtypid => pg_catalog.pg_type.oid
    144+
    Join pg_catalog.pg_range.rngsubtype => pg_catalog.pg_type.oid
    145+
    Join pg_catalog.pg_range.rngcollation => pg_catalog.pg_collation.oid
    146+
    Join pg_catalog.pg_range.rngsubopc => pg_catalog.pg_opclass.oid
    147+
    Join pg_catalog.pg_range.rngcanonical => pg_catalog.pg_proc.oid
    148+
    Join pg_catalog.pg_range.rngsubdiff => pg_catalog.pg_proc.oid
    142149
    Join pg_catalog.pg_rewrite.ev_class => pg_catalog.pg_class.oid
    143150
    Join pg_catalog.pg_shdepend.refclassid => pg_catalog.pg_class.oid
    144151
    Join pg_catalog.pg_shdescription.classoid => pg_catalog.pg_class.oid
    @@ -186,6 +193,7 @@ Join pg_catalog.pg_type.typcollation => pg_catalog.pg_collation.oid
    186193
    Join pg_catalog.pg_constraint.conpfeqop []=> pg_catalog.pg_operator.oid
    187194
    Join pg_catalog.pg_constraint.conppeqop []=> pg_catalog.pg_operator.oid
    188195
    Join pg_catalog.pg_constraint.conffeqop []=> pg_catalog.pg_operator.oid
    196+
    Join pg_catalog.pg_constraint.conexclop []=> pg_catalog.pg_operator.oid
    189197
    Join pg_catalog.pg_proc.proallargtypes []=> pg_catalog.pg_type.oid
    190198

    191199
    ---------------------------------------------------------------------------

    0 commit comments

    Comments
     (0)
    0