diff options
author | unknown <svoj@mysql.com/april.(none)> | 2007-08-03 03:50:19 +0500 |
---|---|---|
committer | unknown <svoj@mysql.com/april.(none)> | 2007-08-03 03:50:19 +0500 |
commit | 6b205f93b00e1ede922c680252d64d97a195c343 (patch) | |
tree | 3b253ccc925f299595e87cd523d702b8e03428ef /sql/table.cc | |
parent | 4a19d50071c024c08c2071c13302f92a0124d723 (diff) | |
download | mariadb-git-6b205f93b00e1ede922c680252d64d97a195c343.tar.gz |
BUG#27040 - Incorrect FTS parser name output
When a table uses two (or more) fulltext keys with different fulltext parsers,
all fulltext keys (excluding those that use built-in parser) were using first
parser that was mentioned in .frm.
With this fix fulltext keys use proper (assigned during create table) fulltext
parser.
This code was contributed by Yoshinori Matsunobu ymatsunobu@mysql.com
on 2007-03-12 The copyright was assigned and transferred under the
terms of the MySQL Contributor License Agreement.
sql/table.cc:
Shift extra data segment buffer pointer by parser name length to restore
next key parser name correctly.
Diffstat (limited to 'sql/table.cc')
-rw-r--r-- | sql/table.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sql/table.cc b/sql/table.cc index e6f9b1086c7..1e8a37faaa6 100644 --- a/sql/table.cc +++ b/sql/table.cc @@ -918,6 +918,7 @@ static int open_binary_frm(THD *thd, TABLE_SHARE *share, uchar *head, } parser_name.str= (char*) next_chunk; parser_name.length= strlen((char*) next_chunk); + next_chunk+= parser_name.length + 1; keyinfo->parser= my_plugin_lock_by_name(NULL, &parser_name, MYSQL_FTPARSER_PLUGIN); if (! keyinfo->parser) |