mirror of
https://github.com/MariaDB/server.git
synced 2026-04-22 08:15:31 +02:00
Fix that REPAIR/ALTER TABLE use myisam_tempdir
include/myisam.h: Don't assume too big tempoary disks myisam/mi_check.c: Don't assume too big tempoary disks myisam/mi_static.c: Don't assume too big tempoary disks myisam/myisamdef.h: Fix type sql/ha_myisam.cc: Set myisamchk to use MySQL temporary disk space sql/slave.cc: Fix parameters sql/sql_lex.h: Added backup_dir
This commit is contained in:
parent
8c6b365e7d
commit
5a4aa474d8
7 changed files with 22 additions and 14 deletions
|
|
@ -2981,14 +2981,15 @@ ha_checksum mi_byte_checksum(const byte *buf, uint length)
|
|||
static my_bool mi_too_big_key_for_sort(MI_KEYDEF *key, ha_rows rows)
|
||||
{
|
||||
return (key->flag & (HA_BINARY_PACK_KEY | HA_VAR_LENGTH_KEY | HA_FULLTEXT) &&
|
||||
((ulonglong) rows * key->maxlength > MAX_FILE_SIZE ||
|
||||
((ulonglong) rows * key->maxlength >
|
||||
(ulonglong) myisam_max_temp_length ||
|
||||
(ulonglong) rows * (key->maxlength - key->minlength) / 2 >
|
||||
MI_MAX_TEMP_LENGTH ||
|
||||
myisam_max_extra_temp_length ||
|
||||
(rows == 0 && (key->maxlength / key->minlength) > 2)));
|
||||
}
|
||||
|
||||
|
||||
void mi_dectivate_non_unique_index(MI_INFO *info, ha_rows rows)
|
||||
void mi_disable_non_unique_index(MI_INFO *info, ha_rows rows)
|
||||
{
|
||||
MYISAM_SHARE *share=info->s;
|
||||
uint i;
|
||||
|
|
|
|||
|
|
@ -38,6 +38,9 @@ my_bool myisam_concurrent_insert=1;
|
|||
#else
|
||||
my_bool myisam_concurrent_insert=0;
|
||||
#endif
|
||||
my_off_t myisam_max_extra_temp_length= MI_MAX_TEMP_LENGTH;
|
||||
my_off_t myisam_max_temp_length= MAX_FILE_SIZE;
|
||||
|
||||
|
||||
/* read_vec[] is used for converting between P_READ_KEY.. and SEARCH_ */
|
||||
/* Position is , == , >= , <= , > , < */
|
||||
|
|
|
|||
|
|
@ -618,7 +618,7 @@ void mi_get_status(void* param);
|
|||
void mi_update_status(void* param);
|
||||
void mi_copy_status(void* to,void *from);
|
||||
my_bool mi_check_status(void* param);
|
||||
void mi_dectivate_non_unique_index(MI_INFO *info, ha_rows rows);
|
||||
void mi_disable_non_unique_index(MI_INFO *info, ha_rows rows);
|
||||
int _mi_rkey(MI_INFO *info, byte *buf, int inx, const byte *key, uint key_len,
|
||||
enum ha_rkey_function search_flag, bool raw_key);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue