# # test OPTIMIZE and a concurrent SELECT of a MyISAM table # source include/have_debug_sync.inc; call mtr.add_suppression(" marked as crashed and should be repaired"); create table t1 (a int auto_increment primary key, b text); insert t1 (b) select repeat("A", 100); insert t1 (b) select repeat("B", 200) from t1; insert t1 (b) select repeat("C", 300) from t1; delete from t1 where a < 3; explain select a, left(b,10) from t1 order by a; select left(b,10), a from t1 order by a; set debug_sync='myisam_before_repair_by_sort wait_for go'; send optimize table t1; connect (con1,localhost,root,,); let $wait_condition= select count(*) = 1 from information_schema.processlist where state like "%myisam_before_repair_by_sort%"; --source include/wait_condition.inc send select a, left(b,10) from t1 order by a; connect (con2,localhost,root,,); let $wait_condition= select count(*) = 1 from information_schema.processlist where state = "Waiting for table metadata lock"; --source include/wait_condition.inc set debug_sync='now signal go'; connection default; reap; connection con1; reap; disconnect con1; disconnect con2; connection default; drop table t1; set debug_sync='reset'; --echo # End of 5.5 tests # # MDEV-11539 test_if_reopen: Assertion `strcmp(share->unique_file_name,filename) || share->last_version' failed upon select from I_S # CREATE TABLE t1 (i INT) ENGINE=MyISAM; INSERT t1 VALUES (1); LOCK TABLE t1 WRITE; OPTIMIZE TABLE t1; --disable_result_log SELECT * FROM INFORMATION_SCHEMA.TABLES; --enable_result_log SELECT * FROM t1; UNLOCK TABLES; DROP TABLE t1; --echo # End of 10.0 tests