Commit 77ff000a authored by unknown's avatar unknown

BUG#13835: max key length is 1000 bytes when trying to create a fulltext index

Allow fulltext index on VARCHAR columns longer than max key length.


mysql-test/r/fulltext.result:
  A test case for BUG#13835 added.
mysql-test/t/fulltext.test:
  A test case for BUG#13835 added.
sql/sql_table.cc:
  Allow fulltext index on VARCHAR columns longer than max key length.
parent facd2163
......@@ -437,3 +437,11 @@ SELECT a FROM t1 WHERE MATCH a AGAINST('testword\'\'' IN BOOLEAN MODE);
a
testword''
DROP TABLE t1;
CREATE TABLE t1 (a VARCHAR(10000), FULLTEXT(a));
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` varchar(10000) default NULL,
FULLTEXT KEY `a` (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
......@@ -357,4 +357,12 @@ SELECT a FROM t1 WHERE MATCH a AGAINST('testword' IN BOOLEAN MODE);
SELECT a FROM t1 WHERE MATCH a AGAINST('testword\'\'' IN BOOLEAN MODE);
DROP TABLE t1;
#
# BUG#13835: max key length is 1000 bytes when trying to create
# a fulltext index
#
CREATE TABLE t1 (a VARCHAR(10000), FULLTEXT(a));
SHOW CREATE TABLE t1;
DROP TABLE t1;
# End of 4.1 tests
......@@ -1296,7 +1296,7 @@ static int mysql_prepare_table(THD *thd, HA_CREATE_INFO *create_info,
my_error(ER_WRONG_KEY_COLUMN, MYF(0), column->field_name);
DBUG_RETURN(-1);
}
if (length > file->max_key_part_length())
if (length > file->max_key_part_length() && key->type != Key::FULLTEXT)
{
length=file->max_key_part_length();
if (key->type == Key::MULTIPLE)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment