1- /* **********************************************************************
1+ /* ------------------------------------------------------------------------
2+ *
3+ * pg_pathman--1.0--1.1.sql
4+ * Migration scripts to version 1.1
5+ *
6+ * Copyright (c) 2015-2016, Postgres Professional
7+ *
8+ * ------------------------------------------------------------------------
9+ */
10+
11+
12+ /* ------------------------------------------------------------------------
213 * Modify config params table
3- ********************************************************************* */
14+ * ---------------------------------------------------------------------- */
415ALTER TABLE @
[email protected] _config_params ADD COLUMN init_callback REGPROCEDURE
NOT NULL DEFAULT
0 ;
516ALTER TABLE @
[email protected] _config_params ALTER COLUMN enable_parent
SET DEFAULT FALSE;
617
7- /* Enable permissions */
18+
19+ /* ------------------------------------------------------------------------
20+ * Enable permissions
21+ * ----------------------------------------------------------------------*/
822GRANT SELECT , INSERT, UPDATE , DELETE
9231024TO public;
@@ -27,8 +41,10 @@ ALTER TABLE @
[email protected] _config_params ENABLE ROW LEVEL SECURITY;
2741
2842GRANT SELECT ON @
[email protected] _concurrent_part_tasks TO PUBLIC;
2943
30- /* Drop irrelevant functions */
31- DROP FUNCTION @
[email protected] _relcache(
OID );
44+
45+ /* ------------------------------------------------------------------------
46+ * Drop irrelevant functions
47+ * ----------------------------------------------------------------------*/
3248DROP FUNCTION @
[email protected] _set_param(REGCLASS,
TEXT ,
BOOLEAN );
3349DROP FUNCTION @
[email protected] _parent(REGCLASS);
3450DROP FUNCTION @
[email protected] _parent(relation REGCLASS);
@@ -61,7 +77,10 @@ DROP FUNCTION @
[email protected] _range_by_part_oid(REGCLASS, REGCLASS, ANYELEMENT);
6177DROP FUNCTION @
[email protected] _min_range_value(REGCLASS, ANYELEMENT);
6278DROP FUNCTION @
[email protected] _max_range_value(REGCLASS, ANYELEMENT);
6379
64- /* Alter functions' modifiers */
80+
81+ /* ------------------------------------------------------------------------
82+ * Alter functions' modifiers
83+ * ----------------------------------------------------------------------*/
6584ALTER FUNCTION @
[email protected] _count(REGCLASS) STRICT;
6685ALTER FUNCTION @
[email protected] _data(REGCLASS, OUT
BIGINT ) STRICT;
6786ALTER FUNCTION @
[email protected] _pathman_for(REGCLASS) STRICT;
7190ALTER FUNCTION @
[email protected] _overlap(REGCLASS, ANYELEMENT, ANYELEMENT) CALLED
ON NULL INPUT;
7291ALTER FUNCTION @
[email protected] _or_create_range_partition(REGCLASS, ANYELEMENT) CALLED
ON NULL INPUT;
7392
74- /* Create functions */
93+
94+ /* ------------------------------------------------------------------------
95+ * Add new views
96+ * ----------------------------------------------------------------------*/
97+ CREATE
OR REPLACE FUNCTION @
[email protected] _partition_list()
98+ RETURNS TABLE (
99+ parent REGCLASS,
100+ partition REGCLASS,
101+ parttype INT4,
102+ partattr TEXT ,
103+ range_min TEXT ,
104+ range_max TEXT )
105+ AS ' pg_pathman' , ' show_partition_list_internal' LANGUAGE C STRICT;
106+
107+ CREATE
OR REPLACE VIEW @
[email protected] _partition_list
108+ AS SELECT * FROM @
[email protected] _partition_list();
109+
110+ GRANT SELECT ON @
[email protected] _partition_list TO PUBLIC;
111+
112+
113+ /* ------------------------------------------------------------------------
114+ * (Re)create functions
115+ * ----------------------------------------------------------------------*/
75116CREATE
OR REPLACE FUNCTION @
[email protected] _set_param(
76117 relation REGCLASS,
77118 param TEXT ,
0 commit comments