diff options
Diffstat (limited to 'storage/maria/ma_check.c')
-rw-r--r-- | storage/maria/ma_check.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/storage/maria/ma_check.c b/storage/maria/ma_check.c index 7d936409170..ce4a610cec9 100644 --- a/storage/maria/ma_check.c +++ b/storage/maria/ma_check.c @@ -344,7 +344,7 @@ int maria_chk_size(HA_CHECK *param, register MARIA_HA *info) flush_pagecache_blocks(info->s->pagecache, &info->s->kfile, FLUSH_FORCE_WRITE); - size= my_seek(info->s->kfile.file, 0L, MY_SEEK_END, MYF(0)); + size= my_seek(info->s->kfile.file, 0L, MY_SEEK_END, MYF(MY_THREADSAFE)); if ((skr=(my_off_t) info->state->key_file_length) != size) { /* Don't give error if file generated by mariapack */ @@ -539,7 +539,7 @@ int maria_chk_key(HA_CHECK *param, register MARIA_HA *info) maria_extra(info,HA_EXTRA_KEYREAD,0); bzero(info->lastkey,keyinfo->seg->length); if (!maria_rkey(info, info->rec_buff, key, (const uchar*) info->lastkey, - keyinfo->seg->length, HA_READ_KEY_EXACT)) + (key_part_map)1, HA_READ_KEY_EXACT)) { /* Don't count this as a real warning, as maria_chk can't correct it */ uint save=param->warning_printed; @@ -603,7 +603,8 @@ static int chk_index_down(HA_CHECK *param, MARIA_HA *info, { /* purecov: begin tested */ /* Give it a chance to fit in the real file size. */ - my_off_t max_length= my_seek(info->s->kfile.file, 0L, MY_SEEK_END, MYF(0)); + my_off_t max_length= my_seek(info->s->kfile.file, 0L, MY_SEEK_END, + MYF(MY_THREADSAFE)); _ma_check_print_error(param, "Invalid key block position: %s " "key block size: %u file_length: %s", llstr(page, llbuff), keyinfo->block_length, @@ -4772,10 +4773,11 @@ int maria_test_if_almost_full(MARIA_HA *info) { if (info->s->options & HA_OPTION_COMPRESS_RECORD) return 0; - return (my_seek(info->s->kfile.file, 0L, MY_SEEK_END, MYF(0))/10*9 > - (my_off_t) (info->s->base.max_key_file_length) || - my_seek(info->dfile.file, 0L, MY_SEEK_END, MYF(0)) / 10 * 9 > - (my_off_t) info->s->base.max_data_file_length); + return my_seek(info->s->kfile.file, 0L, MY_SEEK_END, + MYF(MY_THREADSAFE))/10*9 > + (my_off_t) info->s->base.max_key_file_length || + my_seek(info->dfile.file, 0L, MY_SEEK_END, MYF(0)) / 10 * 9 > + (my_off_t) info->s->base.max_data_file_length; } /* Recreate table with bigger more alloced record-data */ |