greenplum_schedule 7.3 KB
Newer Older
1
# Greenplum-specific tests
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
#
# The order of the tests is fairly random, but there are a couple of things
# to consider when placing a new test:
#
# * Keep long-running tests in the same group with other tests with a similar
#   runtime. That way, on a multi-processor system, the tests will finish
#   roughly at the same time, which maximizes parallelism.
# * Keep tests together with other tests for similar functionality.
# * There are some dependencies between tests, and some tests cannot run
#   in parallel with other tests.
# * The maximum size of a group is about 20, like in the Postgres
#   parallel_schedule. However, some queries can dispatch a lot of workers
#   to the segments, and therefore has to run in smaller groups to avoid
#   hitting max_connections limit on segments.
#
17

18 19 20 21 22 23
test: variadic_parameters default_parameters

# test workfiles compressed using zlib
# 'zlib' utilizes fault injectors so it needs to be in a group by itself
test: zlib

24
test: leastsquares
25
test: opr_sanity_gp decode_expr bitmapscan bitmapscan_ao case_gp limit_gp notin percentile naivebayes join_gp union_gp gpcopy gp_create_table
K
Kenan Yao 已提交
26
test: filter gpctas gpdist matrix toast sublink table_functions olap_setup complex opclass_ddl information_schema guc_env_var
27
test: bitmap_index gp_dump_query_oids
28
test: indexjoin as_alias regex_gp gpparams with_clause transient_types gp_rules
29
# dispatch should always run seperately from other cases.
30 31
test: dispatch

32 33 34
# This test will change the gp_workfile_limit_per_segment and will need to restart the DB.
# It will also use faultinjector - so it needs to be in a group by itself.
test: segspace_setup
35
test: segspace
36
test: segspace_cleanup
37
test: cursor
38

39
# 'query_finish_pending' sets QueryFinishPending flag to true during query execution using fault injectors
40
# so it needs to be in a group by itself
41
test: query_finish_pending
42

43
test: gpdiffcheck gptokencheck gp_hashagg sequence_gp tidscan co_nestloop_idxscan
44

45
test: rangefuncs_cdb gp_dqa subselect_gp subselect_gp2 distributed_transactions olap_group olap_window_seq partition1 sirv_functions
46

47 48 49 50
# 'partition' runs for a long time, so try to keep it together with other
# long-running tests. Unfortunately, 'partition' also assumes that there
# are no other partitioned tables present in the database, so it cannot run
# in parallel with tests that use partitions.
51
test: partition appendonly alter_distpol_dropped
52 53 54
# 'partition_locking' gets confused if other backends run concurrently and
# hold locks.
test: partition_locking
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
test: vacuum_gp

# FIXME: Temporarily disabled, because it trips an assertion. It's probably
# harmless, but need to investigate and fix. Also, the number of errors put
# in the error table, and hence the output, varies between runs.
#test: sreh

# Disabled tests. XXX: Why are these disabled?
#test: olap_window
#test: tpch500GB
#ignore: dpe

# FIXME: These tests no longer work, because they try to set
# gp_interconnect_type, which doesn't work:
# ERROR:  parameter "gp_interconnect_type" cannot be set after connection start

ignore: gp_portal_error
X
Xin Zhang 已提交
72 73
test: external_table column_compression eagerfree mapred gpdtm_plpgsql alter_table_aocs alter_distribution_policy ic aoco_privileges
test: partition_indexing 
74
test: alter_table_ao ao_create_alter_valid_table subtransaction_limit oid_consistency
75
ignore: icudp_full
76
test: aocs
77 78

test: resource_queue
79 80 81 82
# gp_toolkit performs a vacuum and checks that it truncated the relation. That
# might not happen if other backends are holding transactions open, preventing
# vacuum from removing dead tuples.
test: gp_toolkit
83

84
test: filespace trig auth_constraint role rle portals_updatable plpgsql_cache timeseries resource_queue_function pg_stat_last_operation gp_numeric_agg partindex_test direct_dispatch partition_pruning_with_fn dsp runtime_stats
85

86
# direct dispatch tests
87
test: bfv_dd bfv_dd_multicolumn bfv_dd_types
88

89 90 91 92 93 94 95 96 97 98 99 100 101
# catalog test uses pg_get_constraintdef which may report ERROR when executed
# concurrently with other tests. Cause pg_get_constraintdef() looks up
# information on the constraint from the syscache, which uses SnapshotNow to
# fetch the information. But the query itself uses an MVCC snapshot. If the
# query's MVCC snapshot sees a constraint that is concurrently dropped so that
# it's not visible to SnapshotNow, you get error.
#
# This has been fixed in PostgreSQL 9.4, as part of a larger patch that relaxed
# locking requirements of ALTER TABLE
# (https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=e5550d5fec66aa74caad1f79b79826ec64898688)
test: catalog

test: bfv_catalog bfv_index bfv_olap bfv_aggregate bfv_partition DML_over_joins gp_optimizer bfv_statistic
102
 
103
test: aggregate_with_groupingsets 
104

105
test: nested_case_null
106

107
test: bfv_cte bfv_joins bfv_subquery bfv_planner bfv_legacy
108

109
test: qp_olap_mdqa qp_misc
110

111 112
test: qp_misc_jiras qp_with_clause qp_executor qp_olap_windowerr qp_olap_window qp_derived_table qp_bitmapscan
test: qp_functions qp_misc_rio_join_small qp_misc_rio qp_correlated_query qp_targeted_dispatch qp_gist_indexes2 qp_gist_indexes3 qp_gist_indexes4 qp_query_execution
113

114
test: qp_dpe qp_subquery qp_functions_idf qp_regexp qp_resource_queue
115

116 117 118
test: olap_setup
test: qp_olap_group

119
ignore: tpch500GB_orca
120

121
# Tests for "compaction", i.e. VACUUM, of updatable append-only tables
122
test: uao_compaction/full uao_compaction/outdated_partialindex uao_compaction/drop_column_update uao_compaction/eof_truncate uao_compaction/basic uao_compaction/outdatedindex uao_compaction/update_toast uao_compaction/outdatedindex_abort uao_compaction/delete_toast uao_compaction/alter_table_analyze uao_compaction/full_eof_truncate uao_compaction/full_threshold
123
# TODO find why these tests fail in parallel, for now keeping them sequential
124
test: uao_compaction/full_stats
125 126
test: uao_compaction/stats
test: uao_compaction/threshold
127 128 129
test: uao_compaction/index_stats
test: uao_compaction/index
test: uao_compaction/drop_column
130
test: uao_compaction/index2
131

132 133
# Tests for "compaction", i.e. VACUUM, of updatable append-only column oriented tables
test: uaocs_compaction/alter_table_analyze uaocs_compaction/basic uaocs_compaction/drop_column_update uaocs_compaction/eof_truncate uaocs_compaction/full uaocs_compaction/full_eof_truncate uaocs_compaction/full_threshold uaocs_compaction/outdated_partialindex uaocs_compaction/outdatedindex uaocs_compaction/outdatedindex_abort
134
# TODO find why these tests fail in parallel, for now keeping them sequential
135 136 137 138 139 140
test: uaocs_compaction/full_stats
test: uaocs_compaction/stats
test: uaocs_compaction/threshold
test: uaocs_compaction/index_stats
test: uaocs_compaction/index
test: uaocs_compaction/drop_column
141

142 143 144 145 146 147
# Do not add the two uao*_catalog_tables tests to a group that runs
# serializable transactions.  They run VACUUM FULL on append-optimized
# tables and assume that no AWAITING_DROP segfiles exist at the end of
# VACUUM FULL.
test: uao_catalog_tables uaocs_catalog_tables uao_ddl/blocksize uao_ddl/compresstype uao_ddl/alter_ao_part_tables_splitpartition uao_ddl/create_ao_tables uao_ddl/create_ao_table_500cols uao_ddl/alter_ao_part_exch uao_ddl/alter_ao_part_tables
test: uao_ddl/cursor uao_ddl/alter_ao_table_owner uao_ddl/alter_ao_table_statistics uao_ddl/alter_ao_table_index uao_ddl/alter_ao_table_oid uao_ddl/alter_ao_table_setdefault uao_ddl/analyze_ao_table_every_dml uao_ddl/alter_ao_table_setstorage uao_ddl/alter_ao_table_constraint uao_ddl/alter_ao_table_col_ddl
148

149 150 151
# Test psql \du output
test: psql_gpdb_du

152
# end of tests