WL#13241: Move testcases in binlog ,binlog_gtid,binlog_nogtid suites that needs MyISAM to a separate .test file

Affects: Server-8.0   —   Status: Complete

There are tests in the binlog,binlog_gtid,binlog_nogtid suites that have some 
testcases running on MyISAM.  These are marked with have_myisam.inc and will be 
skipped on a server built without MyISAM. Currently MyISAM is always compiled in 
and hence these tests will run. This might change in the future. We do not want 
entire .test files to be skipped due to a few testcases that need MyISAM. 

This WL will move the sections that need MyISAM to a separate .test file . 
R1 - It shall be possible to run complete MTR test suite on a server that is built 
without MyISAM engine
R2 - Tests that need MyISAM shall not be run when triggered on a server without 
MyISAM engine
R3 - Tests that do not need MyISAM shall run and pass when run on server without 
MyISAM engine
We earlier marked all tests that require MyISAM with have_myisam.inc file. Some
of these tests are only for MyISAM and some have tests for MyISAM and other
engines. This WL should separate out MyISAM testcases from tests that have tests 
for multiple engines. The strategy to be followed in this WL will be roughly as 
below


1. Tests that contain force_myisam_default. 
* These tests are exclusively for MyISAM and no change is needed in the .test 
file
2. Tests that contain have_myisam.inc, but not force_myisam_default - These
.test files have some sub tests for MyISAM. Move the MyISAM specific parts into
a new file (original-test-name_myisam.test) in the same directory and add the 
following
* Add force_myisam_default.inc
* Retain have_myisam.inc 
* Add comments explaining why the test needs MyISAM
3. Remove have_myisam.inc from the original file

Note: Not all tests that require MyISAM is covered by have_myisam.inc. There are 
few tests that does not have "have_myisam.inc" and still have MyISAM reference in 
the test/subtest. The list have been updated in the below sections.
1.Following tests in binlog(binlog/binlog_gtid/binlog_nogitd test suites for 
now which are specific to MyISAM and includes "have_myisam.inc" and 
"force_myisam_default.inc".

binlog/t/binlog_stm_blackhole.test
binlog/t/binlog_stm_row.test
binlog_nogtid/t/binlog_row_insert_select.test
binlog_nogtid/t/binlog_stm_insert_select.test

2.Following tests in binlog(binlog/binlog_gtid/binlog_nogitd) test suites have 
"have_myisam.inc" and do not have force_myisam_default.inc.

binlog/t/binlog_crash_safe_master_checksum.test
binlog/t/binlog_create_drop_temporary_table.test
binlog/t/binlog_drop_temp_table_on_disconnect_row_mix.test
binlog/t/binlog_drop_temp_table_on_disconnect_stmt.test
binlog/t/binlog_incident.test
binlog/t/binlog_innodb_row.test
binlog/t/binlog_killed_simulate.test
binlog/t/binlog_killed.test
binlog/t/binlog_mixed_load_data.test
binlog/t/binlog_rotate_bgc_sync.test
binlog/t/binlog_row_delete_all_rows.test
binlog/t/binlog_row_mix_drop_tmp_tbl.test
binlog/t/binlog_stm_delete_all_rows.test
binlog/t/binlog_stm_user_variables.test
binlog/t/binlog_switch_inside_trans.test
binlog/t/binlog_truncate_kill.test
binlog/t/binlog_truncate_myisam.test
binlog_gtid/t/binlog_gtid_mysqlbinlog_row_myisam.test
binlog_gtid/t/binlog_mts_logical_clock_gtid.test
binlog_nogtid/t/binlog_enforce_gtid_consistency_multiple_warnings.test
binlog_nogtid/t/binlog_mts_logical_clock.test
binlog_nogtid/t/binlog_mysqlbinlog_row_myisam.test
binlog_nogtid/t/binlog_mysqlbinlog_row_trans.test
binlog_nogtid/t/binlog_nogtid_create_drop_temporary_table.test
i_binlog/t/binlog_close_conn_assert.test
i_binlog/t/binlog_max_binlog_cache_size.test
i_binlog_gtid/t/binlog_gtid_set_gtid_next.test


3.Following MTR tests in binlog(binlog/binlog_gtid/binlog_nogitd) test suites 
have engine=MyISAM existence but do not include "have_myisam.inc".

binlog_nogtid/t/binlog_row_kill_create_select.test
binlog_nogtid/t/binlog_row_mix_innodb_myisam.test
binlog_nogtid/t/binlog_set_gtid_mode_ongoing_transaction_errors.test
binlog_nogtid/t/binlog_stm_mix_innodb_myisam.test
i_binlog_gtid/t/binlog_mixed_row_gtid_myisam_tmp_table.test
i_binlog_gtid/t/binlog_stm_gtid_myisam_tmp_table.test