1515ALTER TABLE @extschema@.pathman_config RENAME COLUMN attname TO expr;
1616ALTER TABLE @extschema@.pathman_config ADD COLUMN cooked_exprTEXT ;
1717
18- DROP TRIGGER pathman_config_params_trigger;
18+ DROP TRIGGER pathman_config_params_triggerON @extschema@.pathman_config_params ;
1919
2020CREATE TRIGGER pathman_config_params_trigger
2121AFTER INSERTOR UPDATE OR DELETE ON @extschema@.pathman_config_params
2222FOR EACH ROW EXECUTE PROCEDURE @extschema@.pathman_config_params_trigger_func();
2323
24- CREATEOR REPLACE VIEW @extschema@.pathman_cache_stats
25- AS SELECT * FROM @extschema@.show_cache_stats();
24+
25+ DROP FUNCTION @extschema@.validate_interval_value(REGCLASS,TEXT ,INTEGER ,TEXT ) CASCADE;
26+
27+ CREATEOR REPLACE FUNCTION @extschema@.validate_interval_value(
28+ partrelREGCLASS,
29+ exprTEXT ,
30+ parttypeINTEGER ,
31+ range_intervalTEXT ,
32+ cooked_exprTEXT )
33+ RETURNS BOOLAS ' pg_pathman' ,' validate_interval_value'
34+ LANGUAGE C;
2635
2736ALTER TABLE @extschema@.pathman_config
2837ADDCONSTRAINT pathman_config_interval_check
29- CHECK (@extschema@.validate_interval_value(atttype,
38+ CHECK (@extschema@.validate_interval_value(partrel,
39+ expr,
3040 parttype,
31- range_interval));
41+ range_interval,
42+ cooked_expr));
3243
3344DO $$
3445DECLARE
@@ -41,18 +52,35 @@ BEGIN
4152EXECUTE format(' ALTER TABLE %s RENAME CONSTRAINT %s TO %s' ,
4253v_rec .t ,v_rec .conname ,v_rec .new_conname );
4354END LOOP;
44-
45- RETURN TRUE;
4655END
4756$$ LANGUAGE plpgsql;
4857
4958
59+ DROP VIEW pathman_partition_list;
60+
61+ DROP FUNCTION @extschema@.show_partition_list();
62+
63+ CREATEOR REPLACE FUNCTION @extschema@.show_partition_list()
64+ RETURNS TABLE (
65+ parentREGCLASS,
66+ partitionREGCLASS,
67+ parttypeINT4,
68+ exprTEXT ,
69+ range_minTEXT ,
70+ range_maxTEXT )
71+ AS ' pg_pathman' ,' show_partition_list_internal'
72+ LANGUAGE C STRICT;
73+
74+ CREATEOR REPLACE VIEW @extschema@.pathman_partition_list
75+ AS SELECT * FROM @extschema@.show_partition_list();
76+
77+ GRANT SELECT ON @extschema@.pathman_partition_list TO PUBLIC;
78+
79+
5080/* ------------------------------------------------------------------------
5181 * Drop irrelevant objects
5282 * ----------------------------------------------------------------------*/
53- DROP FUNCTION @extschema@.validate_interval_value(REGCLASS,TEXT ,INTEGER ,TEXT );
54- DROP FUNCTION @extschema@.show_partition_list();
55- DROP FUNCTION @extschema@._partition_data_concurrent(REGCLASS, ANYELEMENT, ANYELEMENT,INT ,BIGINT );
83+ DROP FUNCTION @extschema@._partition_data_concurrent(REGCLASS, ANYELEMENT, ANYELEMENT,INT , OUTBIGINT );
5684DROP FUNCTION @extschema@.disable_pathman_for(REGCLASS);
5785DROP FUNCTION @extschema@.common_relation_checks(REGCLASS,TEXT );
5886DROP FUNCTION @extschema@.validate_relations_equality(OID ,OID );
@@ -89,26 +117,6 @@ ALTER FUNCTION @extschema@.build_sequence_name(REGCLASS) STRICT;
89117/* ------------------------------------------------------------------------
90118 * (Re)create functions
91119 * ----------------------------------------------------------------------*/
92- CREATEOR REPLACE FUNCTION @extschema@.validate_interval_value(
93- partrelREGCLASS,
94- exprTEXT ,
95- parttypeINTEGER ,
96- range_intervalTEXT ,
97- cooked_exprTEXT )
98- RETURNS BOOLAS ' pg_pathman' ,' validate_interval_value'
99- LANGUAGE C;
100-
101- CREATEOR REPLACE FUNCTION @extschema@.show_partition_list()
102- RETURNS TABLE (
103- parentREGCLASS,
104- partitionREGCLASS,
105- parttypeINT4,
106- exprTEXT ,
107- range_minTEXT ,
108- range_maxTEXT )
109- AS ' pg_pathman' ,' show_partition_list_internal'
110- LANGUAGE C STRICT;
111-
112120CREATEOR REPLACE FUNCTION @extschema@.show_cache_stats()
113121RETURNS TABLE (
114122contextTEXT ,
@@ -118,6 +126,9 @@ RETURNS TABLE (
118126AS ' pg_pathman' ,' show_cache_stats_internal'
119127LANGUAGE C STRICT;
120128
129+ CREATEOR REPLACE VIEW @extschema@.pathman_cache_stats
130+ AS SELECT * FROM @extschema@.show_cache_stats();
131+
121132
122133CREATEOR REPLACE FUNCTION @extschema@._partition_data_concurrent(
123134relationREGCLASS,