1
1
\set VERBOSITY terse
2
2
SET search_path = 'public';
3
- CREATE SCHEMA pathman;
4
- CREATE EXTENSION pg_pathman SCHEMA pathman;
5
- CREATE SCHEMA test;
3
+ CREATE EXTENSION pg_pathman;
4
+ CREATE SCHEMA test_exprs;
6
5
/* hash */
7
- CREATE TABLE test .hash_rel (
6
+ CREATE TABLE test_exprs .hash_rel (
8
7
id SERIAL PRIMARY KEY,
9
8
value INTEGER,
10
9
value2 INTEGER
11
10
);
12
- INSERT INTO test .hash_rel (value, value2)
11
+ INSERT INTO test_exprs .hash_rel (value, value2)
13
12
SELECT val, val * 2 FROM generate_series(1, 5) val;
14
- SELECT COUNT(*) FROM test .hash_rel;
13
+ SELECT COUNT(*) FROM test_exprs .hash_rel;
15
14
count
16
15
-------
17
16
5
18
17
(1 row)
19
18
20
- SELECT pathman. create_hash_partitions('test .hash_rel', 'value * value2', 4);
19
+ SELECT create_hash_partitions('test_exprs .hash_rel', 'value * value2', 4);
21
20
create_hash_partitions
22
21
------------------------
23
22
4
24
23
(1 row)
25
24
26
- SELECT COUNT(*) FROM ONLY test .hash_rel;
25
+ SELECT COUNT(*) FROM ONLY test_exprs .hash_rel;
27
26
count
28
27
-------
29
28
0
30
29
(1 row)
31
30
32
- SELECT COUNT(*) FROM test .hash_rel;
31
+ SELECT COUNT(*) FROM test_exprs .hash_rel;
33
32
count
34
33
-------
35
34
5
36
35
(1 row)
37
36
38
- INSERT INTO test .hash_rel (value, value2)
37
+ INSERT INTO test_exprs .hash_rel (value, value2)
39
38
SELECT val, val * 2 FROM generate_series(6, 10) val;
40
- SELECT COUNT(*) FROM ONLY test .hash_rel;
39
+ SELECT COUNT(*) FROM ONLY test_exprs .hash_rel;
41
40
count
42
41
-------
43
42
0
44
43
(1 row)
45
44
46
- SELECT COUNT(*) FROM test .hash_rel;
45
+ SELECT COUNT(*) FROM test_exprs .hash_rel;
47
46
count
48
47
-------
49
48
10
50
49
(1 row)
51
50
52
- EXPLAIN (COSTS OFF) SELECT * FROM test .hash_rel WHERE value = 5;
51
+ EXPLAIN (COSTS OFF) SELECT * FROM test_exprs .hash_rel WHERE value = 5;
53
52
QUERY PLAN
54
53
------------------------------
55
54
Append
@@ -63,7 +62,7 @@ EXPLAIN (COSTS OFF) SELECT * FROM test.hash_rel WHERE value = 5;
63
62
Filter: (value = 5)
64
63
(9 rows)
65
64
66
- EXPLAIN (COSTS OFF) SELECT * FROM test .hash_rel WHERE (value * value2) = 5;
65
+ EXPLAIN (COSTS OFF) SELECT * FROM test_exprs .hash_rel WHERE (value * value2) = 5;
67
66
QUERY PLAN
68
67
----------------------------------------
69
68
Append
@@ -72,83 +71,86 @@ EXPLAIN (COSTS OFF) SELECT * FROM test.hash_rel WHERE (value * value2) = 5;
72
71
(3 rows)
73
72
74
73
/* range */
75
- CREATE TABLE test .range_rel (id SERIAL PRIMARY KEY, dt TIMESTAMP, txt TEXT);
76
- INSERT INTO test .range_rel (dt, txt)
74
+ CREATE TABLE test_exprs .range_rel (id SERIAL PRIMARY KEY, dt TIMESTAMP, txt TEXT);
75
+ INSERT INTO test_exprs .range_rel (dt, txt)
77
76
SELECT g, md5(g::TEXT) FROM generate_series('2015-01-01', '2020-04-30', '1 month'::interval) as g;
78
- SELECT pathman. create_range_partitions('test .range_rel', 'RANDOM()', '15 years'::INTERVAL, '1 year'::INTERVAL, 10);
77
+ SELECT create_range_partitions('test_exprs .range_rel', 'RANDOM()', '15 years'::INTERVAL, '1 year'::INTERVAL, 10);
79
78
ERROR: start value is less than min value of "random()"
80
- SELECT pathman. create_range_partitions('test .range_rel', 'AGE(dt, ''2000-01-01''::DATE)',
79
+ SELECT create_range_partitions('test_exprs .range_rel', 'AGE(dt, ''2000-01-01''::DATE)',
81
80
'15 years'::INTERVAL, '1 year'::INTERVAL, 10);
82
81
NOTICE: sequence "range_rel_seq" does not exist, skipping
83
82
create_range_partitions
84
83
-------------------------
85
84
10
86
85
(1 row)
87
86
88
- INSERT INTO test .range_rel_1 (dt, txt) VALUES ('2020-01-01'::DATE, md5('asdf'));
87
+ INSERT INTO test_exprs .range_rel_1 (dt, txt) VALUES ('2020-01-01'::DATE, md5('asdf'));
89
88
ERROR: new row for relation "range_rel_1" violates check constraint "pathman_range_rel_1_check"
90
- SELECT COUNT(*) FROM test .range_rel_6;
89
+ SELECT COUNT(*) FROM test_exprs .range_rel_6;
91
90
count
92
91
-------
93
92
4
94
93
(1 row)
95
94
96
- INSERT INTO test .range_rel_6 (dt, txt) VALUES ('2020-01-01'::DATE, md5('asdf'));
97
- SELECT COUNT(*) FROM test .range_rel_6;
95
+ INSERT INTO test_exprs .range_rel_6 (dt, txt) VALUES ('2020-01-01'::DATE, md5('asdf'));
96
+ SELECT COUNT(*) FROM test_exprs .range_rel_6;
98
97
count
99
98
-------
100
99
5
101
100
(1 row)
102
101
103
- EXPLAIN (COSTS OFF) SELECT * FROM test .range_rel WHERE (AGE(dt, '2000-01-01'::DATE)) = '18 years'::interval;
102
+ EXPLAIN (COSTS OFF) SELECT * FROM test_exprs .range_rel WHERE (AGE(dt, '2000-01-01'::DATE)) = '18 years'::interval;
104
103
QUERY PLAN
105
104
-------------------------------------------------------------------------------------------------------------
106
105
Append
107
106
-> Seq Scan on range_rel_4
108
107
Filter: (age(dt, 'Sat Jan 01 00:00:00 2000'::timestamp without time zone) = '@ 18 years'::interval)
109
108
(3 rows)
110
109
111
- SELECT pathman. create_update_triggers('test .range_rel');
110
+ SELECT create_update_triggers('test_exprs .range_rel');
112
111
create_update_triggers
113
112
------------------------
114
113
115
114
(1 row)
116
115
117
- SELECT COUNT(*) FROM test .range_rel;
116
+ SELECT COUNT(*) FROM test_exprs .range_rel;
118
117
count
119
118
-------
120
119
65
121
120
(1 row)
122
121
123
- SELECT COUNT(*) FROM test .range_rel_1;
122
+ SELECT COUNT(*) FROM test_exprs .range_rel_1;
124
123
count
125
124
-------
126
125
12
127
126
(1 row)
128
127
129
- SELECT COUNT(*) FROM test .range_rel_2;
128
+ SELECT COUNT(*) FROM test_exprs .range_rel_2;
130
129
count
131
130
-------
132
131
12
133
132
(1 row)
134
133
135
- UPDATE test .range_rel SET dt = '2016-12-01' WHERE dt >= '2015-10-10' AND dt <= '2017-10-10';
134
+ UPDATE test_exprs .range_rel SET dt = '2016-12-01' WHERE dt >= '2015-10-10' AND dt <= '2017-10-10';
136
135
/* counts in partitions should be changed */
137
- SELECT COUNT(*) FROM test .range_rel;
136
+ SELECT COUNT(*) FROM test_exprs .range_rel;
138
137
count
139
138
-------
140
139
65
141
140
(1 row)
142
141
143
- SELECT COUNT(*) FROM test .range_rel_1;
142
+ SELECT COUNT(*) FROM test_exprs .range_rel_1;
144
143
count
145
144
-------
146
145
10
147
146
(1 row)
148
147
149
- SELECT COUNT(*) FROM test .range_rel_2;
148
+ SELECT COUNT(*) FROM test_exprs .range_rel_2;
150
149
count
151
150
-------
152
151
24
153
152
(1 row)
154
153
154
+ DROP SCHEMA test_exprs CASCADE;
155
+ NOTICE: drop cascades to 17 other objects
156
+ DROP EXTENSION pg_pathman;
0 commit comments