1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139
|
--- sql/pgtap.sql
+++ sql/pgtap.sql
@@ -10321,136 +10321,6 @@
);
$$ LANGUAGE sql;
--- _partof( child_schema, child_table, parent_schema, parent_table )
-CREATE OR REPLACE FUNCTION _partof ( NAME, NAME, NAME, NAME )
-RETURNS BOOLEAN AS $$
- SELECT EXISTS(
- SELECT true
- FROM pg_catalog.pg_namespace cn
- JOIN pg_catalog.pg_class cc ON cn.oid = cc.relnamespace
- JOIN pg_catalog.pg_inherits i ON cc.oid = i.inhrelid
- JOIN pg_catalog.pg_class pc ON i.inhparent = pc.oid
- JOIN pg_catalog.pg_namespace pn ON pc.relnamespace = pn.oid
- WHERE cn.nspname = $1
- AND cc.relname = $2
- AND cc.relispartition
- AND pn.nspname = $3
- AND pc.relname = $4
- AND pc.relkind = 'p'
- )
-$$ LANGUAGE sql;
-
--- _partof( child_table, parent_table )
-CREATE OR REPLACE FUNCTION _partof ( NAME, NAME )
-RETURNS BOOLEAN AS $$
- SELECT EXISTS(
- SELECT true
- FROM pg_catalog.pg_class cc
- JOIN pg_catalog.pg_inherits i ON cc.oid = i.inhrelid
- JOIN pg_catalog.pg_class pc ON i.inhparent = pc.oid
- WHERE cc.relname = $1
- AND cc.relispartition
- AND pc.relname = $2
- AND pc.relkind = 'p'
- AND pg_catalog.pg_table_is_visible(cc.oid)
- AND pg_catalog.pg_table_is_visible(pc.oid)
- )
-$$ LANGUAGE sql;
-
--- is_partition_of( child_schema, child_table, parent_schema, parent_table, description )
-CREATE OR REPLACE FUNCTION is_partition_of ( NAME, NAME, NAME, NAME, TEXT )
-RETURNS TEXT AS $$
- SELECT ok( _partof($1, $2, $3, $4), $5);
-$$ LANGUAGE sql;
-
--- is_partition_of( child_schema, child_table, parent_schema, parent_table )
-CREATE OR REPLACE FUNCTION is_partition_of ( NAME, NAME, NAME, NAME )
-RETURNS TEXT AS $$
- SELECT ok(
- _partof($1, $2, $3, $4),
- 'Table ' || quote_ident($1) || '.' || quote_ident($2) || ' should be a partition of '
- || quote_ident($3) || '.' || quote_ident($4)
- );
-$$ LANGUAGE sql;
-
--- is_partition_of( child_table, parent_table, description )
-CREATE OR REPLACE FUNCTION is_partition_of ( NAME, NAME, TEXT )
-RETURNS TEXT AS $$
- SELECT ok( _partof($1, $2), $3);
-$$ LANGUAGE sql;
-
--- is_partition_of( child_table, parent_table )
-CREATE OR REPLACE FUNCTION is_partition_of ( NAME, NAME )
-RETURNS TEXT AS $$
- SELECT ok(
- _partof($1, $2),
- 'Table ' || quote_ident($1) || ' should be a partition of ' || quote_ident($2)
- );
-$$ LANGUAGE sql;
-
--- _parts(schema, table)
-CREATE OR REPLACE FUNCTION _parts( NAME, NAME )
-RETURNS SETOF NAME AS $$
- SELECT i.inhrelid::regclass::name
- FROM pg_catalog.pg_namespace n
- JOIN pg_catalog.pg_class c ON n.oid = c.relnamespace
- JOIN pg_catalog.pg_inherits i ON c.oid = i.inhparent
- WHERE n.nspname = $1
- AND c.relname = $2
- AND c.relkind = 'p'
-$$ LANGUAGE SQL;
-
--- _parts(table)
-CREATE OR REPLACE FUNCTION _parts( NAME )
-RETURNS SETOF NAME AS $$
- SELECT i.inhrelid::regclass::name
- FROM pg_catalog.pg_class c
- JOIN pg_catalog.pg_inherits i ON c.oid = i.inhparent
- WHERE c.relname = $1
- AND c.relkind = 'p'
- AND pg_catalog.pg_table_is_visible(c.oid)
-$$ LANGUAGE SQL;
-
--- partitions_are( schema, table, partitions, description )
-CREATE OR REPLACE FUNCTION partitions_are( NAME, NAME, NAME[], TEXT )
-RETURNS TEXT AS $$
- SELECT _are(
- 'partitions',
- ARRAY(SELECT _parts($1, $2) EXCEPT SELECT unnest($3)),
- ARRAY(SELECT unnest($3) EXCEPT SELECT _parts($1, $2)),
- $4
- );
-$$ LANGUAGE SQL;
-
--- partitions_are( schema, table, partitions )
-CREATE OR REPLACE FUNCTION partitions_are( NAME, NAME, NAME[] )
-RETURNS TEXT AS $$
- SELECT partitions_are(
- $1, $2, $3,
- 'Table ' || quote_ident($1) || '.' || quote_ident($2) || ' should have the correct partitions'
- );
-$$ LANGUAGE SQL;
-
--- partitions_are( table, partitions, description )
-CREATE OR REPLACE FUNCTION partitions_are( NAME, NAME[], TEXT )
-RETURNS TEXT AS $$
- SELECT _are(
- 'partitions',
- ARRAY(SELECT _parts($1) EXCEPT SELECT unnest($2)),
- ARRAY(SELECT unnest($2) EXCEPT SELECT _parts($1)),
- $3
- );
-$$ LANGUAGE SQL;
-
--- partitions_are( table, partitions )
-CREATE OR REPLACE FUNCTION partitions_are( NAME, NAME[] )
-RETURNS TEXT AS $$
- SELECT partitions_are(
- $1, $2,
- 'Table ' || quote_ident($1) || ' should have the correct partitions'
- );
-$$ LANGUAGE SQL;
-
CREATE OR REPLACE FUNCTION _ident_array_to_sorted_string( name[], text )
RETURNS text AS $$
SELECT array_to_string(ARRAY(
|