# ----------
# 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.
# ----------
# This test case is used to monitor GUC parameter information.
# If the GUC parameter is changed, please modify the Code/src/bin/gs_guc/cluster_guc.conf and Code/src/test/regress/output/recovery_2pc_tools.source files.
#test: recovery_2pc_tools recovery_2pc_tools02
#test: recovery_2pc_tools
# --------------------------
# usecases for improving coverage
# these use cases may affect other usecases, please keep these usecases unique in their parallel groups
# --------------------------
test: analytic_funcs accept_float_str_as_int
test: timecapsule_partition_ustore_test_1
test: timecapsule_partition_ustore_test_2
test: ddl
test: ustore_subpartition_vacuum_partition
test: test_ustore_undo_tool
test: privileges
test: AMHeap_logical_scan
test: copy
test: sqlbypass_partition
test: sqlpatch_base
test: sqlpatch_func
test: extract_pushdown_or_clause
#wlm
test: workload_manager
test: spm_adaptive_gplan
test: smp smp_cursor parallel_enable_function
test: alter_hw_package dependent_view1
test: hw_grant_package gsc_func gsc_db dependent_view2
test: uppercase_attribute_name decode_compatible_with_o outerjoin_bugfix
test: replace_func_with_two_args trunc_func_for_date nlssort_pinyin updatable_views dependent_view
# test multiple statistics
test: functional_dependency record_slow_sql_in_proc
test: pg_proc_test test_row_type_in_proc exec_result_test
# test fdw
# NOTICE: In the "fdw_prepare", we copy the fdw test to be used from contrib into regress sql set.
test: fdw_prepare
test: postgres_fdw postgres_fdw_cstore postgres_fdw_partition
# parse xlog and page
#test: parse_page
#test: parse_xlog
#test user_defined_variable
test: set_user_defined_variables_test
test: set_system_variables_test
# test for set [session | global] transaction
test: set_transaction_test
# test select into statement
test: select_into_user_defined_variables
test: select_into_file
test: gs_dump_package gs_dump_pkgfunc trigger_dump gs_dump_synonym dump_trigger_definer dump_with_trigger gs_dump_clean
test: public_synonym
test: out_param_func out_param_func_overload
#test: sqlcode_cursor
test: gs_dump_tableconstraint
test: gs_dump_parallel
# test AI4DB
test: plpgsql_override_out test_plsql_core plpgsql/plpgsql_normal plpgsql/plpgsql_othercase plpgsql/plpgsql_unsupported plpgsql_dump plpgsql/plpgsql_table
test: plpgsql_sql_with_proc_keyword
test: plsql_show_all_error b_pg_plsql_show_all_error
test: pldeveloper_gs_source
test: index_advisor
#test: pl_debugger_server pl_debugger_client
test: update_for_wait_s1 update_for_wait_s2
test: plan_hint plan_hint_set plan_hint_no_expand plan_hint_iud null_test_opt deserialize_func
test: large_sequence int16 gs_dump_sequence
test: gs_dump_tableof view_definer_test view_definer_permission_test
test: analyze_commands
#test: single_node_job
test: single_node_ddl
test: single_node_sqlbypass
test: median deferrable
test: array_funcs first_last_agg
test: fetch_rows_with_ties
test: hw_pwd_encryption_sm3
test: sync_standy_names
#test event
test: event
test: event_dump_audit
#test sha func
test: single_node_sha
#test b format collation
test: test_b_format_collate charset_b_format test_b_format_collate2
test: charset_connection_test
# test subpartition
test: hw_subpartition_createtable hw_subpartition_scan hw_subpartition_select hw_subpartition_split hw_subpartition_truncate hw_subpartition_update hw_subpartition_gpi hw_subpartition_analyze_vacuum hw_subpartition_alter_table hw_subpartition_index hw_subpartition_add_drop_partition hw_subpartition_tablespace hw_subpartition_ddl_index hw_subpartition_size
test: hw_subpartition_vacuum_partition hw_subpartition_tablespace_global
test: gs_dump_subpartition
test: partition_dml_operations partition_minmax partition_pruning hw_partitionno hw_partition_parallel
test: partition_param_path hw_subpartition_add_drop_partition_1 null_in_partition
#test: partition_cost_model
test: row_partition_iterator_elimination col_partition_iterator_elimination
# test subpartition with segment=on
test: segment_subpartition_createtable segment_subpartition_scan segment_subpartition_select segment_subpartition_split segment_subpartition_truncate segment_subpartition_update segment_subpartition_gpi segment_subpartition_analyze_vacuum segment_subpartition_alter_table segment_subpartition_add_drop_partition segment_subpartition_tablespace segment_subpartition_ddl_index
test: segment_subpartition_vacuum_partition segment_subpartition_select_1
test: get_instr_unique_sql
# 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: single_node_tablespace
#test startwith...connect by
test: sw_prepare
test: sw_basic sw_icbc sw_siblings sw_bugfix-1 sw_bugfix-2 sw_by_rownum_level sw_prior
test: outfuncs_bugfix
test: sw_clearup
# test customer base environment hint
test: hw_cbt_hint_prep
test: hw_cbt_hint
test: hw_cbt_hint_drop
#--------------
# any privilege
# -------------
test: pri_alter_any_table pri_create_any_function pri_create_any_index pri_create_any_sequence pri_create_any_type pri_dml_any_table pri_execute_any_function pri_indepent_any pri_any_package pri_samenew_schema
# ----------
# The first group of parallel tests
# ----------
test: single_node_boolean single_node_char single_node_name single_node_varchar single_node_text single_node_int2 single_node_int4 single_node_int8 single_node_oid single_node_float4 single_node_float8 single_node_bit single_node_numeric single_node_txid single_node_uuid single_node_enum single_node_money single_node_nvarchar
# Depends on things setup during char, varchar and text
#test: single_node_strings
# Depends on int2, int4, int8, float4, float8
test: single_node_numerology
# ----------
# The second group of parallel tests
# ----------
test: single_node_point single_node_lseg single_node_box single_node_path single_node_polygon single_node_circle single_node_date single_node_time single_node_timetz single_node_timestamp single_node_timestamptz
#test: single_node_interval
test: single_node_abstime single_node_reltime
#test: single_node_tinterval
test: single_node_inet single_node_macaddr single_node_tstypes single_node_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: single_node_geometry single_node_horology
#test: single_node_regex
test: single_node_regex_temp test_regexp
test: single_node_oidjoins single_node_type_sanity
# ----------
# These four each depend on the previous one
# ----------
test: single_node_insert xc_rownum
test: single_node_temple
test: single_node_create_function_1
#test: single_node_create_type
#test: single_node_create_table
#test: single_node_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: single_node_copy single_node_copyselect
# pre-Read test
test: preread_test
# ----------
# More groups of parallel tests
# ----------
#test: single_node_create_misc
#test: single_node_create_operator
# These depend on the above two
#test: single_node_create_index
#test: single_node_create_view
test: single_node_test_null_operator
# ----------
# Another group of parallel tests
# ----------
test: single_node_create_aggregate test_cast_in_operator
#test: single_node_create_function_3 single_node_create_cast
#test: single_node_constraints single_node_triggers single_node_inherit single_node_create_table_like single_node_typed_table
test: single_node_vacuum
#test: single_node_drop_if_exists
# ----------
# sanity_check does a vacuum, affecting the sort order of SELECT *
# results. So it should not run parallel to other tests.
# ----------
#test: single_node_sanity_check
# ----------
# Believe it or not, select creates a table, subsequent
# tests need.
# ----------
test: single_node_errors
#test: single_node_select
ignore: single_node_random
# ----------
# Another group of parallel tests
# ----------
#test: single_node_select_into single_node_select_distinct
#test: single_node_select_distinct_on single_node_select_implicit single_node_select_having
test: single_node_select_implicit single_node_select_having
#test: single_node_subselect
test: single_node_union
#test: single_node_case single_node_join single_node_aggregates
#test: single_node_transactions
test: single_node_random transactions_test autocommit_test
#test: single_node_portals
#test: single_node_arrays
#test: single_node_btree_index single_node_hash_index single_node_update
test: prefixkey_index invisible_index
test: hash_index_001
test: hash_index_002
test: single_node_update parse_fusion
#test single_node_namespace
#test: single_node_prepared_xacts
#test: single_node_delete
# ----------
# Another group of parallel tests
# ----------
#test: single_node_privileges
#test: single_node_security_label single_node_collate
#test: single_node_misc
# rules cannot run concurrently with any test that creates a view
#test: single_node_rules
# ----------
# Another group of parallel tests
# ----------
#test: single_node_select_views
#test: single_node_portals_p2
test: single_node_foreign_key
#test: single_node_foreign_key single_node_cluster single_node_dependency
#test: single_node_guc
test: single_node_bitmapops single_node_combocid
#test: single_node_tsearch
#test: single_node_tsdicts
#test: single_node_foreign_data
#single_node_window
#test: single_node_xmlmap
#test: single_node_functional_deps single_node_advisory_lock single_node_json single_node_equivclass
test: xml subtype xmltype xml_type_dump
# ----------
# 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: single_node_sequence
#test: single_node_plancache single_node_limit single_node_plpgsql single_node_copy2 single_node_temp single_node_domain single_node_rangefuncs single_node_prepare single_node_without_oid single_node_conversion single_node_truncate single_node_alter_table single_node_sequence single_node_polymorphism
#test: single_node_rowtypes
#test: single_node_returning single_node_largeobject single_node_with single_node_xml
# run stats by itself because its delay may be insufficient under heavy load
#test: single_node_stats
# run and check forbidden functions are still forbidden to use in single node
test: single_node_forbidden
test: single_node_mergeinto merge_subquery merge_subquery3 merge_1
test: merge_where_col
test: merge_concurrent_update_delete_1 merge_concurrent_update_delete_2 merge_concurrent_update_delete_3 merge_into_deleted merge_into_partition_row_movement merge_into_selfmodified merge_into_updated
# Trigger tests
test: single_node_triggers
#test: single_node_xc_trigship
# Synonym tests
#test: single_node_synonym
test: synonym_conflict_test
test: synonym_permission
# unsupported view tests
test: single_node_unsupported_view
#test: hw_cstore
# ----------
# single_node_commit/rollback tests
# ----------
test: single_node_produce_commit_rollback
test: single_node_function_commit_rollback
test: instr_unique_sql
test: auto_explain plan_table_for_anonymous_block
test: shutdown
# List/Hash table exchange
test: hw_partition_list_exchange
test: hw_partition_hash_exchange
# List/Hash table truncate
test: hw_partition_list_truncate hw_partition_hash_truncate
# add/drop partition
test: hw_partition_add_drop_partition
# create view on partition/subpartition
test: hw_partition_create_view
#test: hw_partition_start_end
# To check min_max fuc support IP
test: min_max_support_IP
# encrypt decrypt
test: encrypt_decrypt
# interval partition
test: hw_partition_interval
test: hw_partition_interval_exchange
test: hw_partition_interval_index
test: hw_partition_interval_unusable_index
test: hw_partition_interval_reindex
test: hw_partition_interval_movement
# To check create interval partition parallel
test: hw_partition_interval_parallel_prepare
test: hw_partition_interval_parallel_insert hw_partition_interval_parallel_insert_01 hw_partition_interval_parallel_insert_02
test: hw_partition_interval_parallel_end
test: hw_partition_interval_select
test: hw_partition_interval_check_syntax
test: hw_partition_interval_split
test: hw_partition_interval_merge
test: hw_partition_interval_compatibility
test: hw_partition_interval_dump_restore
test: partition_interval_parallel_copy
# Global Partition Index feature testcase
# gpi create
test: gpi_build_index
# gpi check
test: gpi_create_constraint
test: gpi_unique_check
# gpi index scan
test: gpi_index
# gpi index only scan
test: gpi_index_only
# gpi bitmap
test: gpi_bitmapscan
# gpi pwj
test: gpi_pwj
# gpi set unusable
test: gpi_set_index_unusable
# gpi rebuild
#test: gpi_rebuild_index
# gpi cluster
test: gpi_cluster_01 gpi_cluster_02 gpi_cluster_03
# gpi interval
test: gpi_interval
# gpi range
test: gpi_range
# gpi invliad part
test: gpi_invalid_part
# test: gpi_clean_wait
# gpi vacuum
test: gpi_vacuum_lazy
test: gpi_hw_partition_vacuum_full
test: gpi_hw_partition_vacuum_full_01
# gpi alter
test: gpi_alter_partition
test: gpi_alter_partition_with_update
# test: gpi_merge_partitions
# global temporary table tests
test: gtt_stats
test: gtt_function
test: gtt_prepare
test: gtt_parallel_1 gtt_parallel_2
test: gtt_clean
test: gtt_merge
#openGauss synchronization test cases
test: partiton_pathkey_col_plan partiton_pathkey_col_randomexec partiton_pathkey_row_plan partiton_pathkey_row_randomexec
#test the locales setting expect not affacted each other
#test: pg_session_locale
# ----------
# These four each depend on the previous one(duplicate)
# duplicated create_function_1 create_type create_table copy
# ----------
#test: type_sanity
#test: create_function_1
test: create_table create_table_2 create_table_3
test: temp__4 obsscaninfo
test: create_seg_table
#test: copy#
# show_events
test: show_events
# ----------
# More groups of parallel tests
# duplicated create_misc
# ----------
#test: hw_hashagg_start
test: create_misc
test: create_view1 create_view2 create_view3 create_view4 create_view5 comment_table
#test: int8#
#dupliacated select int8
#test: select
#test: misc
#test: stats
#test: alter_system_set
#dispatch from 13
test: function
test: aggregates_part1 aggregates_part2 aggregates_part3 count_distinct_part1 count_distinct_part2 count_distinct_part4
test: aggregate_B_database
test: group_concat_max_len_gs_guc
#test: count_distinct_part3#
test: hw_dfx_thread_status
test: stable_function_shippable
# Postgres-XC : Removed this test from the parallel group of tests since it used to give inconsistent plan outputs.
#test: inherit
# ----------
# Another group of parallel tests
# ----------
test: create_function_3 vacuum
test: drop_if_exists drop_database test_if_not_exists test_create_index_if_not_exists test_create_sequence_if_not_exists
#test: constraints
# test for new expr IS [NOT] NAN|INFINITE and new function TO_BINARY_FLOAT
test: func_to_binary_float expr_nantest_infinitetest
#test: errors subplan_base
test: subplan_new
#test: select
test: col_subplan_new
#test: col_subplan_base_1
#test: join
test: sublink_pullup_mergejoin
test: select_into subselect_part2 gs_aggregate
#test: select_distinct subselect_part1 transactions btree_index select_distinct_on arrays hash_index
#test: transactions_control random union
#test: aggregates
test: holdable_cursor cursor_expression cursor_expression_dump
#test: portals_p2 window tsearch temp__6 col_subplan_base_2
test: test_float test_numeric_with_neg_scale test_float_dump db4ai_security
# test for tid range scan
#test: tidrangescan
test: alter_table_000 alter_table_002 alter_table_003 alter_table_modify
#test: alter_table_001 alter_table_modify_ustore
test: alter_table_modify_ltt alter_table_modify_gtt table_constraint
test: alter_table_modify alter_table_modify_ustore alter_table_modify_ltt alter_table_modify_gtt
# test for empty string in A format database
test: accept_empty_str not_accept_empty_str pg_empty_str accept_empty_copy not_accept_empty_copy
test: lateral lateral_with_dop lateral_dump
# test for forbid remote DDL
test: forbid_ddl
#test: gin/cgin
test: cgin_select ignore_keyword_list keywords
test: gin_select
# test for binary_double suffix and Constant values
test: test_binary_suffix
# test for rotate and unrotate function
test: gb_ora_rotate_unrotate
# test for string type char byte semantic
test: bpchar_charbyte bpchar_cast bpchar_copy bpchar_index bpchar_regexmatch varchar_charbyte varchar_cast varchar_copy varchar_index varchar_regexmatch char_length_semantic
test: gs_dump_char_semantic
test: gs_dump_2hash
# test backup tool audit log
test: backup_tool_audit
test: extra_float_digits
test: auto_parameterization
test: auto_parameterization_views
# test mot when without mot in compile
test: mot/without_mot_server