From 04cff0d055fd63d7f0a9395478171e735799f30b Mon Sep 17 00:00:00 2001 From: "ramil@mysql.com" <> Date: Wed, 14 Dec 2005 21:42:08 +0400 Subject: [PATCH] Fix for bug #15623: Test case rpl000001 and rpl_error_ignored_table failure on MacOSX and bug #15668: Test 'sp-error' crashes server on Mac OS X. --- mysql-test/r/rpl000001.result | 2 +- mysql-test/t/flush_read_lock_kill.test | 2 +- mysql-test/t/rpl000001.test | 2 +- mysql-test/t/rpl_error_ignored_table.test | 2 +- sql/sql_class.cc | 4 +++- 5 files changed, 7 insertions(+), 5 deletions(-) diff --git a/mysql-test/r/rpl000001.result b/mysql-test/r/rpl000001.result index 450e728090e..de9f6f16b2a 100644 --- a/mysql-test/r/rpl000001.result +++ b/mysql-test/r/rpl000001.result @@ -50,7 +50,7 @@ select (@id := id) - id from t2; 0 kill @id; drop table t2; -ERROR 08S01: Server shutdown in progress +Got one of the listed errors set global sql_slave_skip_counter=1; start slave; select count(*) from t1; diff --git a/mysql-test/t/flush_read_lock_kill.test b/mysql-test/t/flush_read_lock_kill.test index de2576300dc..19a47b2893a 100644 --- a/mysql-test/t/flush_read_lock_kill.test +++ b/mysql-test/t/flush_read_lock_kill.test @@ -42,7 +42,7 @@ connection con1; # debug build running without our --debug=make_global..., will be # error 0 (no error). The only important thing to test is that on # debug builds with our --debug=make_global... we don't hang forever. ---error 0,1053 +--error 0,1053,2013 reap; connection con2; diff --git a/mysql-test/t/rpl000001.test b/mysql-test/t/rpl000001.test index 3d03823d474..45d621b730f 100644 --- a/mysql-test/t/rpl000001.test +++ b/mysql-test/t/rpl000001.test @@ -92,7 +92,7 @@ kill @id; # We don't drop t3 as this is a temporary table drop table t2; connection master; ---error 1053 +--error 1053,2013 reap; connection slave; # The SQL slave thread should now have stopped because the query was killed on diff --git a/mysql-test/t/rpl_error_ignored_table.test b/mysql-test/t/rpl_error_ignored_table.test index cb4137c49e0..339d966dbb3 100644 --- a/mysql-test/t/rpl_error_ignored_table.test +++ b/mysql-test/t/rpl_error_ignored_table.test @@ -45,7 +45,7 @@ select (@id := id) - id from t3; kill @id; drop table t2,t3; connection master; ---error 0,1053 +--error 0,1053,2013 reap; connection master1; --replace_column 2 # 5 # diff --git a/sql/sql_class.cc b/sql/sql_class.cc index 989b8142202..035018c91bc 100644 --- a/sql/sql_class.cc +++ b/sql/sql_class.cc @@ -473,10 +473,12 @@ void THD::awake(THD::killed_state state_to_set) killed= state_to_set; if (state_to_set != THD::KILL_QUERY) + { thr_alarm_kill(real_id); #ifdef SIGNAL_WITH_VIO_CLOSE - close_active_vio(); + close_active_vio(); #endif + } if (mysys_var) { pthread_mutex_lock(&mysys_var->mutex);