From 578007404d91f96104e14392afb8a82709e6bd2f Mon Sep 17 00:00:00 2001 From: Sergey Vojtovich Date: Tue, 27 Oct 2009 18:27:27 +0400 Subject: A follow-up to fix for BUG#47073 - valgrind errs, corruption,failed repair of partition, low myisam_sort_buffer_size Fixed race conditions discovered with the provided test case and stabilized test case. include/myisam.h: Serialize submission of messages from multi-threaded REPAIR. mysql-test/r/myisam.result: REPAIR output highly depend on threads activity. Disabled result log to make test case deterministic. mysql-test/t/myisam.test: REPAIR output highly depend on threads activity. Disabled result log to make test case deterministic. storage/myisam/ha_myisam.cc: Serialize submission of messages from multi-threaded REPAIR. storage/myisam/mi_check.c: Serialize submission of messages from multi-threaded REPAIR. storage/myisam/sort.c: Only master thread is allowed to detach write cache from the share. --- mysql-test/t/myisam.test | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'mysql-test/t/myisam.test') diff --git a/mysql-test/t/myisam.test b/mysql-test/t/myisam.test index e4ea939f348..56fe103adc9 100644 --- a/mysql-test/t/myisam.test +++ b/mysql-test/t/myisam.test @@ -1539,14 +1539,14 @@ INSERT INTO t1 SELECT a+5120,b FROM t1; SET myisam_sort_buffer_size=4; REPAIR TABLE t1; -# !!! Disabled until additional fix for BUG#47073 is pushed. -#SET myisam_repair_threads=2; +SET myisam_repair_threads=2; # May report different values depending on threads activity. -#--replace_regex /changed from [0-9]+/changed from #/ -#REPAIR TABLE t1; -#SET myisam_repair_threads=@@global.myisam_repair_threads; - +--disable_result_log +REPAIR TABLE t1; +--enable_result_log +SET myisam_repair_threads=@@global.myisam_repair_threads; SET myisam_sort_buffer_size=@@global.myisam_sort_buffer_size; +CHECK TABLE t1; DROP TABLE t1; --echo End of 5.1 tests -- cgit v1.2.1