Commit 0e0137b5 authored by serg@sergbook.mysql.com's avatar serg@sergbook.mysql.com
Browse files

one more "suboptimal memory usage during REPAIR for FULLTEXT keys" bug fixed

parent 3a2f5774
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -3671,12 +3671,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)
{
  uint key_maxlength=key->maxlength;
  if (key->flag & HA_FULLTEXT)
    key_maxlength+=ft_max_word_len_for_sort-HA_FT_MAXLEN;
  return (key->flag & (HA_BINARY_PACK_KEY | HA_VAR_LENGTH_KEY | HA_FULLTEXT) &&
	  ((ulonglong) rows * key->maxlength >
	  ((ulonglong) rows * key_maxlength >
	   (ulonglong) myisam_max_temp_length ||
	   (ulonglong) rows * (key->maxlength - key->minlength) / 2 >
	   (ulonglong) rows * (key_maxlength - key->minlength) / 2 >
	   myisam_max_extra_temp_length ||
	   (rows == 0 && (key->maxlength / key->minlength) > 2)));
	   (rows == 0 && (key_maxlength / key->minlength) > 2)));
}