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)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy