Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 798070e

Browse files
committed
Re-order some regression test scripts for more parallelism.
Move the strings, numerology, insert, insert_conflict, select and errors tests to be parts of nearby parallel groups, instead of executing by themselves. (Moving "select" required adjusting the constraints test, which uses a table named "tmp" as select also does. There don't seem to be any other conflicts.) Move psql and stats_ext to the next parallel group, where the rules test also has a long runtime. To make it safe to run stats_ext in parallel with rules, I adjusted the latter to only dump views/rules from the pg_catalog and public schemas, which was what it was doing anyway. stats_ext makes some views in a transient schema, which now will not affect rules. Reorder serial_schedule to match parallel_schedule. Discussion: https://postgr.es/m/735.1554935715@sss.pgh.pa.us
1 parent 5874c70 commit 798070e

File tree

7 files changed

+36
-39
lines changed

7 files changed

+36
-39
lines changed

src/test/regress/expected/rules.out

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1282,7 +1282,9 @@ drop table cchild;
12821282
--
12831283
-- temporarily disable fancy output, so view changes create less diff noise
12841284
\a\t
1285-
SELECT viewname, definition FROM pg_views WHERE schemaname <> 'information_schema' ORDER BY viewname;
1285+
SELECT viewname, definition FROM pg_views
1286+
WHERE schemaname IN ('pg_catalog', 'public')
1287+
ORDER BY viewname;
12861288
iexit| SELECT ih.name,
12871289
ih.thepath,
12881290
interpt_pp(ih.thepath, r.thepath) AS exit
@@ -2418,7 +2420,8 @@ toyemp| SELECT emp.name,
24182420
(12 * emp.salary) AS annualsal
24192421
FROM emp;
24202422
SELECT tablename, rulename, definition FROM pg_rules
2421-
ORDER BY tablename, rulename;
2423+
WHERE schemaname IN ('pg_catalog', 'public')
2424+
ORDER BY tablename, rulename;
24222425
pg_settings|pg_settings_n|CREATE RULE pg_settings_n AS
24232426
ON UPDATE TO pg_catalog.pg_settings DO INSTEAD NOTHING;
24242427
pg_settings|pg_settings_u|CREATE RULE pg_settings_u AS

src/test/regress/expected/sanity_check.out

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,7 @@ time_tbl|f
206206
timestamp_tbl|f
207207
timestamptz_tbl|f
208208
timetz_tbl|f
209+
tmp|f
209210
varchar_tbl|f
210211
view_base_table|t
211212
-- restore normal output mode

src/test/regress/input/constraints.source

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ DELETE FROM INSERT_TBL;
201201

202202
ALTER SEQUENCE INSERT_SEQ RESTART WITH 4;
203203

204-
CREATE TABLE tmp (xd INT, yd TEXT, zd INT);
204+
CREATE TEMP TABLE tmp (xd INT, yd TEXT, zd INT);
205205

206206
INSERT INTO tmp VALUES (null, 'Y', null);
207207
INSERT INTO tmp VALUES (5, '!check failed', null);

src/test/regress/output/constraints.source

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ NOTICE: drop cascades to table atacc2
291291
--
292292
DELETE FROM INSERT_TBL;
293293
ALTER SEQUENCE INSERT_SEQ RESTART WITH 4;
294-
CREATE TABLE tmp (xd INT, yd TEXT, zd INT);
294+
CREATE TEMP TABLE tmp (xd INT, yd TEXT, zd INT);
295295
INSERT INTO tmp VALUES (null, 'Y', null);
296296
INSERT INTO tmp VALUES (5, '!check failed', null);
297297
INSERT INTO tmp VALUES (null, 'try again', null);

src/test/regress/parallel_schedule

Lines changed: 13 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,12 @@ test: tablespace
1515
# ----------
1616
test: boolean char name varchar text int2 int4 int8 oid float4 float8 bit numeric txid uuid enum money rangetypes pg_lsn regproc
1717

18-
# Depends on things setup during char, varchar and text
19-
test: strings
20-
# Depends on int2, int4, int8, float4, float8
21-
test: numerology
22-
2318
# ----------
2419
# The second group of parallel tests
20+
# strings depends on char, varchar and text
21+
# numerology depends on int2, int4, int8, float4, float8
2522
# ----------
26-
test: point lseg line box path polygon circle date time timetz timestamp timestamptz interval inet macaddr macaddr8 tstypes fsm
23+
test: strings numerology point lseg line box path polygon circle date time timetz timestamp timestamptz interval inet macaddr macaddr8 tstypes fsm
2724

2825
# ----------
2926
# Another group of parallel tests
@@ -35,8 +32,6 @@ test: geometry horology regex oidjoins type_sanity opr_sanity misc_sanity commen
3532
# ----------
3633
# These four each depend on the previous one
3734
# ----------
38-
test: insert
39-
test: insert_conflict
4035
test: create_function_1
4136
test: create_type
4237
test: create_table
@@ -48,38 +43,32 @@ test: create_function_2
4843
# execute two copy tests parallel, to check that copy itself
4944
# is concurrent safe.
5045
# ----------
51-
test: copy copyselect copydml
46+
test: copy copyselect copydml insert insert_conflict
5247

5348
# ----------
5449
# More groups of parallel tests
5550
# ----------
5651
test: create_misc create_operator create_procedure
57-
# These depend on the above two
52+
# These depend on create_misc and create_operator
5853
test: create_index create_index_spgist create_view index_including index_including_gist
5954

6055
# ----------
6156
# Another group of parallel tests
6257
# ----------
63-
test: create_aggregate create_function_3 create_cast constraints triggers inherit typed_table vacuum drop_if_exists updatable_views rolenames roleattributes create_am hash_func
58+
test: create_aggregate create_function_3 create_cast constraints triggers select inherit typed_table vacuum drop_if_exists updatable_views rolenames roleattributes create_am hash_func errors
6459

6560
# ----------
6661
# sanity_check does a vacuum, affecting the sort order of SELECT *
6762
# results. So it should not run parallel to other tests.
6863
# ----------
6964
test: sanity_check
7065

71-
# ----------
72-
# Believe it or not, select creates a table, subsequent
73-
# tests need.
74-
# ----------
75-
test: errors
76-
test: select
77-
ignore: random
78-
7966
# ----------
8067
# Another group of parallel tests
68+
# Note: the ignore: line does not run random, just mark it as ignorable
8169
# ----------
82-
test: select_into select_distinct select_distinct_on select_implicit select_having subselect union case join aggregates transactions random portals arrays btree_index hash_index update namespace prepared_xacts delete
70+
ignore: random
71+
test: select_into select_distinct select_distinct_on select_implicit select_having subselect union case join aggregates transactions random portals arrays btree_index hash_index update delete namespace prepared_xacts
8372

8473
# ----------
8574
# Another group of parallel tests
@@ -89,10 +78,11 @@ test: brin gin gist spgist privileges init_privs security_label collate matview
8978
# ----------
9079
# Another group of parallel tests
9180
# ----------
92-
test: create_table_like alter_generic alter_operator misc psql async dbsize misc_functions sysviews tsrf tidscan stats_ext
81+
test: create_table_like alter_generic alter_operator misc async dbsize misc_functions sysviews tsrf tidscan
9382

94-
# rules cannot run concurrently with any test that creates a view
95-
test: rules psql_crosstab amutils
83+
# rules cannot run concurrently with any test that creates
84+
# a view or rule in the public schema
85+
test: rules psql psql_crosstab amutils stats_ext
9686

9787
# run by itself so it can run parallel workers
9888
test: select_parallel

src/test/regress/serial_schedule

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -50,28 +50,29 @@ test: opr_sanity
5050
test: misc_sanity
5151
test: comments
5252
test: expressions
53-
test: insert
54-
test: insert_conflict
5553
test: create_function_1
5654
test: create_type
5755
test: create_table
5856
test: create_function_2
5957
test: copy
6058
test: copyselect
6159
test: copydml
60+
test: insert
61+
test: insert_conflict
6262
test: create_misc
6363
test: create_operator
6464
test: create_procedure
6565
test: create_index
6666
test: create_index_spgist
67+
test: create_view
6768
test: index_including
6869
test: index_including_gist
69-
test: create_view
7070
test: create_aggregate
7171
test: create_function_3
7272
test: create_cast
7373
test: constraints
7474
test: triggers
75+
test: select
7576
test: inherit
7677
test: typed_table
7778
test: vacuum
@@ -81,9 +82,8 @@ test: rolenames
8182
test: roleattributes
8283
test: create_am
8384
test: hash_func
84-
test: sanity_check
8585
test: errors
86-
test: select
86+
test: sanity_check
8787
test: select_into
8888
test: select_distinct
8989
test: select_distinct_on
@@ -129,21 +129,21 @@ test: create_table_like
129129
test: alter_generic
130130
test: alter_operator
131131
test: misc
132-
test: psql
133132
test: async
134133
test: dbsize
135134
test: misc_functions
136135
test: sysviews
137136
test: tsrf
138137
test: tidscan
139-
test: stats_ext
140138
test: rules
139+
test: psql
141140
test: psql_crosstab
141+
test: amutils
142+
test: stats_ext
142143
test: select_parallel
143144
test: write_parallel
144145
test: publication
145146
test: subscription
146-
test: amutils
147147
test: select_views
148148
test: portals_p2
149149
test: foreign_key
@@ -159,14 +159,14 @@ test: window
159159
test: xmlmap
160160
test: functional_deps
161161
test: advisory_lock
162+
test: indirect_toast
163+
test: equivclass
162164
test: json
163165
test: jsonb
164166
test: json_encoding
165167
test: jsonpath
166168
test: jsonpath_encoding
167169
test: jsonb_jsonpath
168-
test: indirect_toast
169-
test: equivclass
170170
test: plancache
171171
test: limit
172172
test: plpgsql

src/test/regress/sql/rules.sql

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -775,10 +775,13 @@ drop table cchild;
775775
-- temporarily disable fancy output, so view changes create less diff noise
776776
\a\t
777777

778-
SELECT viewname, definition FROM pg_views WHERE schemaname <> 'information_schema' ORDER BY viewname;
778+
SELECT viewname, definition FROM pg_views
779+
WHERE schemaname IN ('pg_catalog', 'public')
780+
ORDER BY viewname;
779781

780782
SELECT tablename, rulename, definition FROM pg_rules
781-
ORDER BY tablename, rulename;
783+
WHERE schemaname IN ('pg_catalog', 'public')
784+
ORDER BY tablename, rulename;
782785

783786
-- restore normal output mode
784787
\a\t

0 commit comments

Comments
 (0)