# ---------- # src/test/regress/parallel_schedule # # Most test scripts can be run after running just test_setup and possibly # create_index. Exceptions to this rule are documented below. # # By convention, we put no more than twenty tests in any one parallel group; # this limits the number of connections needed to run the tests. # ---------- # required setup steps test: test_setup # ---------- # The first group of parallel tests # ---------- test: boolean char name varchar text int2 int4 int8 oid float4 float8 bit numeric txid uuid enum money rangetypes pg_lsn regproc # ---------- # The second group of parallel tests # multirangetypes depends on rangetypes # multirangetypes shouldn't run concurrently with type_sanity # ---------- test: strings md5 numerology point lseg line box path polygon circle date time timetz timestamp timestamptz interval inet macaddr macaddr8 multirangetypes # ---------- # Another group of parallel tests # geometry depends on point, lseg, line, box, path, polygon, circle # horology depends on date, time, timetz, timestamp, timestamptz, interval # ---------- test: geometry horology tstypes regex type_sanity opr_sanity misc_sanity comments expressions unicode xid mvcc # ---------- # Load huge amounts of data # We should split the data files into single files and then # execute two copy tests in parallel, to check that copy itself # is concurrent safe. # ---------- test: copy copyselect copydml insert insert_conflict # ---------- # More groups of parallel tests # Note: many of the tests in later groups depend on create_index # ---------- test: create_function_c create_misc create_operator create_procedure create_table create_type create_schema test: create_index create_index_spgist create_view index_including index_including_gist # ---------- # Another group of parallel tests # ---------- test: create_aggregate create_function_sql create_cast constraints triggers select inherit typed_table vacuum drop_if_exists updatable_views roleattributes create_am hash_func errors infinite_recurse # ---------- # sanity_check does a vacuum, affecting the sort order of SELECT * # results. So it should not run parallel to other tests. # ---------- test: sanity_check # ---------- # Another group of parallel tests # aggregates depends on create_aggregate # join depends on create_misc # ---------- 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 # ---------- # Another group of parallel tests # ---------- 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 # ---------- # Additional BRIN tests # ---------- test: brin_bloom brin_multi # ---------- # Another group of parallel tests # psql depends on create_am # amutils depends on geometry, create_index_spgist, hash_index, brin # ---------- test: create_table_like alter_generic alter_operator misc async dbsize merge misc_functions sysviews tsrf tid tidscan tidrangescan collate.utf8 collate.icu.utf8 incremental_sort create_role without_overlaps # collate.linux.utf8 and collate.icu.utf8 tests cannot be run in parallel with each other test: rules psql psql_crosstab amutils stats_ext collate.linux.utf8 collate.windows.win1252 # ---------- # Run these alone so they don't run out of parallel workers # select_parallel depends on create_misc # ---------- test: select_parallel test: write_parallel test: vacuum_parallel # no relation related tests can be put in this group test: publication subscription # ---------- # Another group of parallel tests # select_views depends on create_view # ---------- 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 # ---------- # Another group of parallel tests (JSON related) # ---------- test: json jsonb json_encoding jsonpath jsonpath_encoding jsonb_jsonpath sqljson sqljson_queryfuncs # ---------- # Another group of parallel tests # with depends on create_misc # NB: temp.sql does a reconnect which transiently uses 2 connections, # so keep this parallel group to at most 19 tests # ---------- test: plancache limit plpgsql copy2 temp domain rangefuncs prepare conversion truncate alter_table sequence polymorphism rowtypes returning largeobject with xml # ---------- # Another group of parallel tests # # The stats test resets stats, so nothing else needing stats access can be in # this group. # ---------- test: partition_join partition_prune reloptions hash_part indexing partition_aggregate partition_info tuplesort explain compression memoize stats predicate # event_trigger depends on create_am and cannot run concurrently with # any test that runs DDL # oidjoins is read-only, though, and should run late for best coverage test: oidjoins event_trigger # event_trigger_login cannot run concurrently with any other tests because # on-login event handling could catch connection of a concurrent test. test: event_trigger_login # this test also uses event triggers, so likewise run it by itself test: fast_default # run tablespace test at the end because it drops the tablespace created during # setup that other tests may use. test: tablespace