1515ALTER TABLE @extschema@.pathman_config RENAME COLUMN attname TO expr;
1616ALTER TABLE @extschema@.pathman_config ADD COLUMN cooked_expr TEXT ;
1717
18- DROP TRIGGER pathman_config_params_trigger;
18+ DROP TRIGGER pathman_config_params_trigger ON @extschema@.pathman_config_params ;
1919
2020CREATE TRIGGER pathman_config_params_trigger
2121AFTER INSERT OR UPDATE OR DELETE ON @extschema@.pathman_config_params
2222FOR EACH ROW EXECUTE PROCEDURE @extschema@.pathman_config_params_trigger_func();
2323
24- CREATE OR 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+ CREATE OR REPLACE FUNCTION @extschema@.validate_interval_value(
28+ partrel REGCLASS,
29+ expr TEXT ,
30+ parttype INTEGER ,
31+ range_interval TEXT ,
32+ cooked_expr TEXT )
33+ RETURNS BOOL AS ' pg_pathman' , ' validate_interval_value'
34+ LANGUAGE C;
2635
2736ALTER TABLE @extschema@.pathman_config
2837ADD CONSTRAINT 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
4152 EXECUTE format(' ALTER TABLE %s RENAME CONSTRAINT %s TO %s' ,
4253 v_rec .t , v_rec .conname , v_rec .new_conname );
4354 END 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+ CREATE OR REPLACE FUNCTION @extschema@.show_partition_list()
64+ RETURNS TABLE (
65+ parent REGCLASS,
66+ partition REGCLASS,
67+ parttype INT4,
68+ expr TEXT ,
69+ range_min TEXT ,
70+ range_max TEXT )
71+ AS ' pg_pathman' , ' show_partition_list_internal'
72+ LANGUAGE C STRICT;
73+
74+ CREATE OR 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 , OUT BIGINT );
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- CREATE OR REPLACE FUNCTION @extschema@.validate_interval_value(
93- partrel REGCLASS,
94- expr TEXT ,
95- parttype INTEGER ,
96- range_interval TEXT ,
97- cooked_expr TEXT )
98- RETURNS BOOL AS ' pg_pathman' , ' validate_interval_value'
99- LANGUAGE C;
100-
101- CREATE OR REPLACE FUNCTION @extschema@.show_partition_list()
102- RETURNS TABLE (
103- parent REGCLASS,
104- partition REGCLASS,
105- parttype INT4,
106- expr TEXT ,
107- range_min TEXT ,
108- range_max TEXT )
109- AS ' pg_pathman' , ' show_partition_list_internal'
110- LANGUAGE C STRICT;
111-
112120CREATE OR REPLACE FUNCTION @extschema@.show_cache_stats()
113121RETURNS TABLE (
114122 context TEXT ,
@@ -118,6 +126,9 @@ RETURNS TABLE (
118126AS ' pg_pathman' , ' show_cache_stats_internal'
119127LANGUAGE C STRICT;
120128
129+ CREATE OR REPLACE VIEW @extschema@.pathman_cache_stats
130+ AS SELECT * FROM @extschema@.show_cache_stats();
131+
121132
122133CREATE OR REPLACE FUNCTION @extschema@._partition_data_concurrent(
123134 relation REGCLASS,
0 commit comments