Loading myisam/sort.c +8 −6 Original line number Diff line number Diff line Loading @@ -532,11 +532,13 @@ int thr_write_keys(MI_SORT_PARAM *sort_param) while (!got_error && !my_b_read(&sinfo->tempfile_for_exceptions,(byte*)&key_length, sizeof(key_length)) && !my_b_read(&sinfo->tempfile_for_exceptions,(byte*)mergebuf, (uint) key_length)) sizeof(key_length))) { if (_mi_ck_write(info,sinfo->key,(uchar*) mergebuf, byte ft_buf[HA_FT_MAXLEN + HA_FT_WLEN + 10]; if (key_length > sizeof(ft_buf) || my_b_read(&sinfo->tempfile_for_exceptions, (byte*)ft_buf, (uint)key_length) || _mi_ck_write(info, sinfo->key, (uchar*)ft_buf, key_length - info->s->rec_reflength)) got_error=1; } Loading mysql-test/r/fulltext.result +8 −0 Original line number Diff line number Diff line Loading @@ -321,3 +321,11 @@ SELECT MATCH(a) AGAINST ('nosuchword') FROM t1; MATCH(a) AGAINST ('nosuchword') 0 DROP TABLE t1; CREATE TABLE t1 (a VARCHAR(30), FULLTEXT(a)); INSERT INTO t1 VALUES('bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'); SET myisam_repair_threads=2; REPAIR TABLE t1; Table Op Msg_type Msg_text test.t1 repair status OK SET myisam_repair_threads=@@global.myisam_repair_threads; DROP TABLE t1; mysql-test/t/fulltext.test +11 −0 Original line number Diff line number Diff line Loading @@ -260,3 +260,14 @@ CREATE TABLE t1 ( a TEXT, FULLTEXT (a) ); INSERT INTO t1 VALUES ('testing ft_nlq_find_relevance'); SELECT MATCH(a) AGAINST ('nosuchword') FROM t1; DROP TABLE t1; # # BUG#11684 - repair crashes mysql when table has fulltext index # CREATE TABLE t1 (a VARCHAR(30), FULLTEXT(a)); INSERT INTO t1 VALUES('bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'); SET myisam_repair_threads=2; REPAIR TABLE t1; SET myisam_repair_threads=@@global.myisam_repair_threads; DROP TABLE t1; Loading
myisam/sort.c +8 −6 Original line number Diff line number Diff line Loading @@ -532,11 +532,13 @@ int thr_write_keys(MI_SORT_PARAM *sort_param) while (!got_error && !my_b_read(&sinfo->tempfile_for_exceptions,(byte*)&key_length, sizeof(key_length)) && !my_b_read(&sinfo->tempfile_for_exceptions,(byte*)mergebuf, (uint) key_length)) sizeof(key_length))) { if (_mi_ck_write(info,sinfo->key,(uchar*) mergebuf, byte ft_buf[HA_FT_MAXLEN + HA_FT_WLEN + 10]; if (key_length > sizeof(ft_buf) || my_b_read(&sinfo->tempfile_for_exceptions, (byte*)ft_buf, (uint)key_length) || _mi_ck_write(info, sinfo->key, (uchar*)ft_buf, key_length - info->s->rec_reflength)) got_error=1; } Loading
mysql-test/r/fulltext.result +8 −0 Original line number Diff line number Diff line Loading @@ -321,3 +321,11 @@ SELECT MATCH(a) AGAINST ('nosuchword') FROM t1; MATCH(a) AGAINST ('nosuchword') 0 DROP TABLE t1; CREATE TABLE t1 (a VARCHAR(30), FULLTEXT(a)); INSERT INTO t1 VALUES('bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'); SET myisam_repair_threads=2; REPAIR TABLE t1; Table Op Msg_type Msg_text test.t1 repair status OK SET myisam_repair_threads=@@global.myisam_repair_threads; DROP TABLE t1;
mysql-test/t/fulltext.test +11 −0 Original line number Diff line number Diff line Loading @@ -260,3 +260,14 @@ CREATE TABLE t1 ( a TEXT, FULLTEXT (a) ); INSERT INTO t1 VALUES ('testing ft_nlq_find_relevance'); SELECT MATCH(a) AGAINST ('nosuchword') FROM t1; DROP TABLE t1; # # BUG#11684 - repair crashes mysql when table has fulltext index # CREATE TABLE t1 (a VARCHAR(30), FULLTEXT(a)); INSERT INTO t1 VALUES('bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'); SET myisam_repair_threads=2; REPAIR TABLE t1; SET myisam_repair_threads=@@global.myisam_repair_threads; DROP TABLE t1;