# Weekly suite - The complete MTR suite in all interesting variations
# Comprises of the following
# 1. Repeat of daily runs
# 2. All suites in normal mode run with --big-test option
# 3. nist suite
# 4. engine independant suite
# 5. Covers debug and non-debug runs
# 6. Covers all suites with Multi-Threaded-Slave and MIXED binlog-format
# 7. Covers all suites with innodb-page-size=4k, 8k, 32 and 64k

# Repeat daily run
# big-test option for normal runs
#
# Default suites (in modes binlog format stmt/mixed/row)
perl mysql-test-run.pl --force --timer  --big-test --testcase-timeout=90 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=normal-debug-big  --vardir=var-normal-debug-big  --report-features --skip-test-list=collections/disabled-weekly.list --mysqld=--innodb_autoextend_increment=64 --unit-tests-report
# embedded
# --debug-server is not used for embedded runs since debug build of embedded server is not available
perl mysql-test-run.pl --force --timer  --big-test --testcase-timeout=60 --parallel=auto --experimental=collections/default.experimental --comment=embedded-big  --vardir=var-embedded-big  --embedded-server
# ps-protocol
perl mysql-test-run.pl --force --timer  --big-test --testcase-timeout=90 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=ps-debug-big  --vardir=var-ps-debug-big  --ps-protocol --skip-test-list=collections/disabled-weekly.list

# Run the suites that are not part of the default - funcs_2, stress, jp, nist
perl mysql-test-run.pl --force --timer  --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=funcs2-debug  --vardir=var-funcs2-big  --suite=funcs_2
perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=stress-debug-big --vardir=var-stress-debug-big  --suite=stress
perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=jp-debug-big --vardir=var-jp-debug-big --suite=jp
perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=nist-debug-big  --vardir=var-nist-debug-big --suite=nist
perl mysql-test-run.pl --force --timer --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=nist+ps-debug --vardir=var-ps_nist-debug  --suite=nist  --ps-protocol


# Additional  replication configurations
perl mysql-test-run.pl --timer --force  --debug-server --big-test --testcase-timeout=60 --parallel=auto --comment=rpl_binlog_checksum-debug --experimental=collections/default.experimental --mysqld=--binlog-checksum=CRC32 --vardir=var-rpl_binlog_checksum-debug --suite=binlog,rpl --skip-test-list=collections/disabled-weekly.list
perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=rpl_crash_safe_relay-debug --vardir=var-rpl_crash_safe_relay-debug --suite=rpl --mysqld=--relay-log-info-repository=TABLE --skip-test-list=collections/disabled-weekly.list
perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=rpl_crash_safe_master-debug --vardir=var-rpl_crash_safe_master-debug --suite=rpl --mysqld=--master-info-repository=TABLE --skip-test-list=collections/disabled-weekly.list


# Engine independent tests
perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto  --comment=eits-tests-myisam-engine-debug-big --experimental=collections/default.experimental --vardir=var-stmt-eits-tests-myisam-engine-debug-big --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=myisam --mysqld=--default-tmp-storage-engine=myisam  --skip-test-list=collections/disabled-weekly.list
perl mysql-test-run.pl --timer --force --debug-server --parallel=auto --comment=eits-rpl-binlog-row-tests-myisam-engine-debug --experimental=collections/default.experimental --vardir=var-binlog-row-eits-tests-myisam-engine-debug --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=myisam --do-test=rpl --mysqld=--binlog-format=row --skip-test-list=collections/disabled-weekly.list
perl mysql-test-run.pl --timer --force --debug-server --parallel=auto  --comment=eits-rpl-binlog-mixed-tests-myisam-engine-debug --experimental=collections/default.experimental --vardir=var-binlog-mixed-eits-tests-myisam-engine-debug --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=myisam --do-test=rpl --mysqld=--binlog-format=mixed --skip-test-list=collections/disabled-weekly.list
perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=eits-tests-innodb-engine-debug-big --experimental=collections/default.experimental --vardir=var-stmt-eits-tests-innodb-engine-debug-big --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=innodb --skip-test-list=collections/disabled-weekly.list
perl mysql-test-run.pl --timer --force --debug-server --parallel=auto --comment=eits-rpl-binlog-row-tests-innodb-engine-debug --experimental=collections/default.experimental --vardir=var-binlog-row-eits-tests-innodb-engine-debug --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=innodb --do-test=rpl --mysqld=--binlog-format=row --skip-test-list=collections/disabled-weekly.list
perl mysql-test-run.pl --timer --force --debug-server --parallel=auto --comment=eits-rpl-binlog-mixed-tests-innodb-engine-debug --experimental=collections/default.experimental --vardir=var-binlog-mixed-eits-tests-innodb-engine-debug --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=innodb --do-test=rpl --mysqld=--binlog-format=mixed --skip-test-list=collections/disabled-weekly.list

# Memcached tests
perl mysql-test-run.pl --timer --force --debug-server --comment=memcached-debug --vardir=var-debug-memcached --experimental=collections/default.experimental --parallel=1 --retry=0 --suite=memcached  --skip-test-list=collections/disabled-weekly.list

# Non debug runs of default suites in normal modes
perl mysql-test-run.pl --force --timer   --big-test --parallel=auto --experimental=collections/default.experimental --comment=normal-non-debug  --vardir=var-normal-non-debug --report-features --skip-test-list=collections/disabled-weekly.list

# Additional GTID coverage (rpl suite with gtid_mode=ON)
perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=rpl_gtid-debug --vardir=var-rpl_gtid-debug --suite=rpl --mysqld=--enforce-gtid-consistency --mysqld=--log-slave-updates --mysqld=--gtid-mode=on --skip-test-list=collections/disabled-gtid-on.list --big-test --testcase-timeout=60 --suite-timeout=360


# Multi-Thread Slave
perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=MTS-debug-big-db-part --vardir=var-MTS-debug-big-db --suite=rpl  --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--slave-parallel-workers=4 --mysqld=--slave-parallel-type=database --skip-test-list=collection/disabled-weekly.list
perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=MTS-debug-big-lc --vardir=var-MTS-debug-big-lc --suite=rpl  --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--slave-parallel-workers=4 --mysqld=--slave-parallel-type=logical_clock --skip-test-list=collection/disabled-weekly.list


# Run innodb suite including big-test with innodb-page-size=4k, 8k, 32k and 64k
# Run innodb_gis suite including big-test with innodb-page-size=4k
perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=innodb_4k_size --vardir=var-innodb-4k --experimental=collections/default.experimental --skip-test-list=collections/disabled-weekly.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin --suite=innodb,innodb_gis
perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=innodb_8k_size --vardir=var-innodb-8k --experimental=collections/default.experimental --skip-test-list=collections/disabled-weekly.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin --suite=innodb
perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=innodb_32k_size --vardir=var-innodb_32k --experimental=collections/default.experimental --skip-test-list=collections/disabled-weekly.list --mysqld=--innodb-page-size=32k --skip-test=innodb_ignore_builtin --suite=innodb
perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=innodb_64k_size --vardir=var-innodb-64k --experimental=collections/default.experimental --skip-test-list=collections/disabled-weekly.list --mysqld=--innodb-page-size=64k --skip-test=innodb_ignore_builtin --suite=innodb

# Run default suites with innodb_undo_tablespace set to > 0
perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server  --parallel=auto --comment=innodb_undo-2-debug  --vardir=var-innodb-tablespaces-2-debug --experimental=collections/default.experimental --mysqld=--innodb_undo_tablespaces=2 --bootstrap --innodb_undo_tablespaces=2

# Additional run to test rpl HASH_SCAN & INDEX_SCAN
perl mysql-test-run.pl --force --debug-server --timer --parallel=auto --experimental=collections/default.experimental --comment=binlog_rpl_row_hash_scan --vardir=var-binlog_rpl_row_hash_scan --mysqld=--binlog-format=row --suite=binlog,rpl --mysqld=--slave-rows-search-algorithms=HASH_SCAN,INDEX_SCAN --big-test --testcase-timeout=60 --skip-test-list=collection/disabled-weekly.list
perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=rpl_binlog_row_hash_MTS --vardir=var-mts-rpl-binlog-hash-n_mix --mysqld=--binlog-format=row --experimental=collections/default.experimental --mysqld=--slave-parallel-workers=4 --suite=rpl,binlog  -mysqld=--slave-rows-search-algorithms=HASH_SCAN,INDEX_SCAN --skip-test-list=collection/disabled-weekly.list

#Run with Query Cache Enabled

perl mysql-test-run.pl --debug-server --timer --force --big-test --testcase-timeout=60 --parallel=auto --comment=Query_Cache_Enabled --vardir=var-QC_Enabled --experimental=collections/default.experimental --skip-test-list=collections/disabled-daily.list --mysqld=--query_cache_type=1 --mysqld=--query_cache_size=1M

# Run innodb compression tests
# Run innodb_zip suite with innodb-log-compressed-pages, innodb-compression-level and innodb_page_size=4k and 8k and the default 16k
perl mysql-test-run.pl --vardir=var-innodb-zip-comp_log0 --force --big-test --comment=compressed_log0 --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --mysqld=--innodb-log-compressed-pages=0 --suite=innodb_zip
perl mysql-test-run.pl --vardir=var-innodb-zip-comp_log1 --force --big-test --comment=compressed_log1 --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --mysqld=--innodb-log-compressed-pages=1 --suite=innodb_zip
perl mysql-test-run.pl --vardir=var-innodb-zip-log0_level1 --force --big-test --comment=compressed_log0_level1 --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --mysqld=--innodb-log-compressed-pages=0 --mysqld=--innodb-compression-level=1 --suite=innodb_zip
perl mysql-test-run.pl --vardir=var-innodb-zip-log1_level9 --force --big-test --comment=compressed_log1_level9 --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --mysqld=--innodb-log-compressed-pages=1 --mysqld=--innodb-compression-level=9 --suite=innodb_zip
perl mysql-test-run.pl --vardir=var-innodb-zip-log0_level9_4k --force --big-test --comment=compressed_log0_level9_4k --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --mysqld=--innodb-log-compressed-pages=0 --mysqld=--innodb-compression-level=9 --mysqld=--innodb-page-size=4k --suite=innodb_zip
perl mysql-test-run.pl --vardir=var-innodb-zip-log1_level1_8k --force --big-test --comment=compressed_log1_level1_8k --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --mysqld=--innodb-log-compressed-pages=1 --mysqld=--innodb-compression-level=1 --mysqld=--innodb-page-size=8k --suite=innodb_zip


# Run all tests under the suite interactive_utilities
perl mysql-test-run.pl --force --timer  --testcase-timeout=60 --parallel=auto --experimental=collections/default.experimental --comment=interactive_tests  --vardir=var-interactive  --suite=interactive_utilities
perl mysql-test-run.pl --timer --force --parallel=6 --comment=group_replication --vardir=var-group_replication --suite=group_replication --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --big-test --testcase-timeout=60 --suite-timeout=360
perl mysql-test-run.pl --timer --force --parallel=6 --comment=group_replication_gtid_assignment_block_size_1 --vardir=var-group_replication_gtid_assignment_block_size_1 --suite=group_replication --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --big-test --testcase-timeout=60 --suite-timeout=360 --mysqld=--loose-group_replication_gtid_assignment_block_size=1
perl mysql-test-run.pl --timer --force --parallel=6 --comment=group_replication_parallel_applier --vardir=var-group_replication_parallel_applier --suite=group_replication --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --big-test --testcase-timeout=60 --suite-timeout=360 --mysqld=--slave-parallel-workers=4 --mysqld=--slave-parallel-type=logical_clock --mysqld=--slave_preserve_commit_order=ON
perl mysql-test-run.pl --timer --force --parallel=6 --comment=group_replication_ssl_mode_required --vardir=var-group_replication_ssl_mode_required --suite=group_replication --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --big-test --testcase-timeout=60 --suite-timeout=360 --mysqld=--loose-group_replication_ssl_mode=REQUIRED
perl mysql-test-run.pl --timer --debug-server --force --parallel=6 --comment=group_replication-debug --vardir=var-group_replication-debug --suite=group_replication --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --big-test --testcase-timeout=60 --suite-timeout=360
perl mysql-test-run.pl --timer --debug-server --force --parallel=6 --comment=group_replication_gtid_assignment_block_size_1-debug --vardir=var-group_replication_gtid_assignment_block_size_1-debug --suite=group_replication --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --big-test --testcase-timeout=60 --suite-timeout=360 --mysqld=--loose-group_replication_gtid_assignment_block_size=1
perl mysql-test-run.pl --timer --debug-server --force --parallel=6 --comment=group_replication_parallel_applier-debug --vardir=var-group_replication_parallel_applier-debug --suite=group_replication --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --big-test --testcase-timeout=60 --suite-timeout=360 --mysqld=--slave-parallel-workers=4 --mysqld=--slave-parallel-type=logical_clock --mysqld=--slave_preserve_commit_order=ON
perl mysql-test-run.pl --timer --debug-server --force --parallel=6 --comment=group_replication_ssl_mode_required-debug --vardir=var-group_replication_ssl_mode_required-debug --suite=group_replication --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --big-test --testcase-timeout=60 --suite-timeout=360 --mysqld=--loose-group_replication_ssl_mode=REQUIRED
perl mysql-test-run.pl --timer --debug-server --force --parallel=6 --comment=group_replication_transaction-write-set-extraction_MURMUR32-debug --vardir=var-group_replication_transaction-write-set-extraction_MURMUR32-debug --suite=group_replication --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --big-test --testcase-timeout=60 --suite-timeout=360 --mysqld=--transaction-write-set-extraction=MURMUR32
perl mysql-test-run.pl --timer --force --parallel=6 --comment=group_replication_parallel_applier_binlog-txn-dependency-tracking --vardir=var-group_replication_parallel_applier_binlog-txn-dependency-tracking --suite=group_replication --experimental=collections/default.experimental --big-test --testcase-timeout=60 --suite-timeout=360 --mysqld=--slave-parallel-workers=4 --mysqld=--slave-parallel-type=logical_clock --mysqld=--slave_preserve_commit_order=ON --mysqld=--binlog-transaction-dependency-tracking=WRITESET
perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=x --vardir=var-x --suite=x --experimental=collections/default.experimental
