# ---------- # src/test/regress/parallel_schedule # # 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. # ---------- # run tablespace by itself, and first, because it forces a checkpoint; # we'd prefer not to have checkpoints later in the tests because that # interferes with crash-recovery testing. test: tablespace # ---------- # 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 # Depends on things setup during char, varchar and text test: strings # Depends on int2, int4, int8, float4, float8 test: numerology # ---------- # The second group of parallel tests # ---------- test: point lseg line box path polygon circle date time timetz timestamp timestamptz interval abstime reltime tinterval inet macaddr tstypes comments # ---------- # Another group of parallel tests # geometry depends on point, lseg, box, path, polygon and circle # horology depends on interval, timetz, timestamp, timestamptz, reltime and abstime # ---------- test: geometry horology regex oidjoins type_sanity opr_sanity # ---------- # These four each depend on the previous one # ---------- test: insert test: create_function_1 test: create_type test: create_table test: create_function_2 # ---------- # Load huge amounts of data # We should split the data files into single files and then # execute two copy tests parallel, to check that copy itself # is concurrent safe. # ---------- test: copy copyselect # ---------- # More groups of parallel tests # ---------- test: create_misc create_operator # These depend on the above two test: create_index create_view # Depends on things setup for create_index test: gp_gin_index test: inherit test: triggers # ---------- # Another group of parallel tests # ---------- test: create_aggregate create_function_3 create_cast constraints create_table_like typed_table vacuum drop_if_exists updatable_views # ---------- # Because vacuum will detect concurrently running transactions, it is necessary to # run this test on its own, or it might not detect the pages are 'all visible' # ---------- test: vacuum_stats # ---------- # sanity_check does a vacuum, affecting the sort order of SELECT * # results. So it should not run parallel to other tests. # # Disabled in GPDB. FIXME: why? # ---------- #test: sanity_check # ---------- # Believe it or not, select creates a table, subsequent # tests need. # ---------- test: errors test: select ignore: random # ---------- # Another group of parallel tests # ---------- test: select_into select_distinct select_distinct_on select_implicit select_having subselect union case join aggregates random portals arrays btree_index hash_index update delete # In PostgreSQL, namespace test is run as part of the fourth group, but there # are some GPDB additions in it that will show diff if concurrent tests use # temporary tables. So run it separately. test: namespace # 2-phase commit is not supported by GPDB. #test: prepared_xacts # The 'transactions' test is disabled in GPDB, because it uses functions # in segments in a way that doesn't work: # ERROR: function cannot execute on a QE slice because it accesses relation "public.xacttest" #test: transactions # ---------- # Another group of parallel tests # ---------- test: privileges security_label collate lock replica_identity # MATERIALIZED_VIEW_FIXME : matview is not supported on greenplum. Enable the test when the feature is ready. #test: matview # ---------- # Another group of parallel tests # ---------- test: alter_generic misc psql async # rules cannot run concurrently with any test that creates a view # # 'rules' test is disabled in GPDB. Maintaining the list of views in it is # too painful, and there are also errors because of cross-segment UPDATEs # and functions. # # GPDB_84_MERGE_FIXME: While disabling this was not really an effect of the 8.4 # merge, it was done a long time ago, it's time to revisit this so we can re- # enable it #test: rules # event triggers cannot run concurrently with any test that runs DDL test: event_trigger # ---------- # Another group of parallel tests # ---------- test: select_views portals_p2 cluster dependency guc bitmapops tsearch tsdicts foreign_data window xmlmap functional_deps advisory_lock json jsonb json_encoding indirect_toast equivclass # Output of the 'combocid' test contains ctid and cmin values, which will # differ depending on how many segments are used. Hence disabled in GPDB. #test: combocid # 'foreign_key' test is disabled, because it contains several tables with # multiple UNIQUE constraints, which is not supported in GPDB. #test: foreign_key # ---------- # Another group of parallel tests # 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 without_oid conversion truncate alter_table alter_extension sequence polymorphism rowtypes returning with xml gp_foreign_data # large objects are not supported by GPDB # test: largeobject # run stats by itself because its delay may be insufficient under heavy load # # 'stats' test has been disabled in GPDB, because it tries to set stats-related # GUCs stats_block_level and stats_row_level, which have been removed from # GPDB. #test: stats