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

Commit f39a874

Browse files
danolivoAndrey Lepikhov
authored and
Andrey Lepikhov
committed
Add installcheck rule. It is basic functionality. Further we need
to implement execution of the regression tests in different modes repeatedly on the same instance and the same database.
1 parent 11f7849 commit f39a874

File tree

2 files changed

+137
-0
lines changed

2 files changed

+137
-0
lines changed

Makefile

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,13 @@ REGRESS = aqo_disabled \
2323
fdw_srcdir = $(top_srcdir)/contrib/postgres_fdw
2424
PG_CPPFLAGS += -I$(libpq_srcdir) -I$(fdw_srcdir)
2525
EXTRA_REGRESS_OPTS=--temp-config=$(top_srcdir)/$(subdir)/conf.add
26+
EXTRA_CLEAN = $(pg_regress_clean_files) sql/tablespace.sql \
27+
sql/misc.sql sql/largeobject.sql sql/create_function_2.sql \
28+
sql/create_function_1.sql sql/copy.sql sql/constraints.sql \
29+
expected/tablespace.out \
30+
expected/misc.out expected/largeobject.out expected/largeobject_1.out \
31+
expected/create_function_2.out expected/create_function_1.out \
32+
expected/copy.out expected/copy_1.out expected/constraints.out
2633
EXTRA_INSTALL = contrib/postgres_fdw
2734

2835
DATA = aqo--1.0.sql aqo--1.0--1.1.sql aqo--1.1--1.2.sql aqo--1.2.sql
@@ -38,3 +45,9 @@ include $(top_builddir)/src/Makefile.global
3845
include $(top_srcdir)/contrib/contrib-global.mk
3946
endif
4047

48+
aqo-regress:
49+
$(pg_regress_check) \
50+
--dlpath=$(CURDIR)/$(top_builddir)/src/test/regress \
51+
--inputdir=$(abs_top_srcdir)/src/test/regress \
52+
--schedule=$(CURDIR)/parallel_schedule \
53+
--load-extension=aqo

parallel_schedule

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
# ----------
2+
# src/test/regress/parallel_schedule
3+
#
4+
# By convention, we put no more than twenty tests in any one parallel group;
5+
# this limits the number of connections needed to run the tests.
6+
# ----------
7+
8+
# run tablespace by itself, and first, because it forces a checkpoint;
9+
# we'd prefer not to have checkpoints later in the tests because that
10+
# interferes with crash-recovery testing.
11+
# test: tablespace
12+
13+
# ----------
14+
# The first group of parallel tests
15+
# ----------
16+
test: boolean char name varchar text int2 int4 int8 oid float4 float8 bit numeric txid uuid enum money rangetypes pg_lsn regproc
17+
18+
# ----------
19+
# The second group of parallel tests
20+
# strings depends on char, varchar and text
21+
# numerology depends on int2, int4, int8, float4, float8
22+
# ----------
23+
test: strings numerology point lseg line box path polygon circle date time timetz timestamp timestamptz interval inet macaddr macaddr8 tstypes
24+
25+
# ----------
26+
# Another group of parallel tests
27+
# geometry depends on point, lseg, box, path, polygon and circle
28+
# horology depends on interval, timetz, timestamp, timestamptz
29+
# ----------
30+
test: geometry horology regex oidjoins type_sanity opr_sanity misc_sanity comments expressions
31+
32+
# ----------
33+
# These four each depend on the previous one
34+
# ----------
35+
test: create_function_1
36+
test: create_type
37+
test: create_table
38+
test: create_function_2
39+
40+
# ----------
41+
# Load huge amounts of data
42+
# We should split the data files into single files and then
43+
# execute two copy tests parallel, to check that copy itself
44+
# is concurrent safe.
45+
# ----------
46+
test: copy copyselect copydml insert insert_conflict
47+
48+
# ----------
49+
# More groups of parallel tests
50+
# ----------
51+
test: create_misc create_operator create_procedure
52+
# These depend on create_misc and create_operator
53+
test: create_index create_index_spgist create_view index_including index_including_gist
54+
55+
# ----------
56+
# Another group of parallel tests
57+
# ----------
58+
test: create_aggregate create_function_3 create_cast constraints triggers select inherit typed_table vacuum drop_if_exists updatable_views roleattributes create_am hash_func errors infinite_recurse
59+
60+
# ----------
61+
# sanity_check does a vacuum, affecting the sort order of SELECT *
62+
# results. So it should not run parallel to other tests.
63+
# ----------
64+
# test: sanity_check
65+
66+
# ----------
67+
# Another group of parallel tests
68+
# Note: the ignore: line does not run random, just mark it as ignorable
69+
# ----------
70+
ignore: random
71+
test: select_into select_distinct select_distinct_on select_implicit select_having case aggregates transactions random portals arrays btree_index hash_index update delete namespace prepared_xacts
72+
# test: subselect union join
73+
74+
# ----------
75+
# Another group of parallel tests
76+
# ----------
77+
test: brin gin gist spgist privileges init_privs security_label collate matview lock replica_identity rowsecurity object_address tablesample groupingsets drop_operator password identity generated join_hash
78+
79+
# ----------
80+
# Another group of parallel tests
81+
# ----------
82+
test: create_table_like alter_generic alter_operator misc async dbsize misc_functions sysviews tsrf tid tidscan
83+
84+
# rules cannot run concurrently with any test that creates
85+
# a view or rule in the public schema
86+
test: rules psql psql_crosstab amutils stats_ext
87+
88+
# run by itself so it can run parallel workers
89+
# test: select_parallel
90+
test: write_parallel
91+
92+
# no relation related tests can be put in this group
93+
test: publication subscription
94+
95+
# ----------
96+
# Another group of parallel tests
97+
# ----------
98+
test: select_views portals_p2 foreign_key cluster dependency guc bitmapops combocid tsearch tsdicts foreign_data window xmlmap functional_deps advisory_lock indirect_toast equivclass
99+
100+
# ----------
101+
# Another group of parallel tests (JSON related)
102+
# ----------
103+
test: json jsonb json_encoding jsonpath jsonpath_encoding jsonb_jsonpath
104+
105+
# ----------
106+
# Another group of parallel tests
107+
# NB: temp.sql does a reconnect which transiently uses 2 connections,
108+
# so keep this parallel group to at most 19 tests
109+
# ----------
110+
test: plancache limit plpgsql copy2 temp domain rangefuncs prepare conversion truncate alter_table sequence polymorphism rowtypes returning largeobject xml
111+
# test: with
112+
113+
# ----------
114+
# Another group of parallel tests
115+
# ----------
116+
test: partition_join partition_prune reloptions hash_part indexing partition_aggregate partition_info
117+
118+
# event triggers cannot run concurrently with any test that runs DDL
119+
test: event_trigger
120+
# this test also uses event triggers, so likewise run it by itself
121+
test: fast_default
122+
123+
# run stats by itself because its delay may be insufficient under heavy load
124+
test: stats

0 commit comments

Comments
 (0)