diff options
Diffstat (limited to 'storage/myisam/mi_check.c')
-rw-r--r-- | storage/myisam/mi_check.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/storage/myisam/mi_check.c b/storage/myisam/mi_check.c index 7e97a751376..98a87a4e915 100644 --- a/storage/myisam/mi_check.c +++ b/storage/myisam/mi_check.c @@ -2629,6 +2629,7 @@ int mi_repair_parallel(HA_CHECK *param, register MI_INFO *info, ulonglong UNINIT_VAR(key_map); pthread_attr_t thr_attr; ulong max_pack_reclength; + int error; DBUG_ENTER("mi_repair_parallel"); start_records=info->state->records; @@ -2926,12 +2927,13 @@ int mi_repair_parallel(HA_CHECK *param, register MI_INFO *info, #else param->sort_buffer_length*sort_param[i].key_length/total_key_length; #endif - if (mysql_thread_create(mi_key_thread_find_all_keys, - &sort_param[i].thr, &thr_attr, - thr_find_all_keys, - (void *) (sort_param+i))) + if ((error= mysql_thread_create(mi_key_thread_find_all_keys, + &sort_param[i].thr, &thr_attr, + thr_find_all_keys, + (void *) (sort_param+i)))) { - mi_check_print_error(param,"Cannot start a repair thread"); + mi_check_print_error(param,"Cannot start a repair thread (errno= %d)", + error); /* Cleanup: Detach from the share. Avoid others to be blocked. */ if (io_share.total_threads) remove_io_thread(&sort_param[i].read_cache); |