From 6b205f93b00e1ede922c680252d64d97a195c343 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 3 Aug 2007 03:50:19 +0500 Subject: 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. --- sql/table.cc | 1 + 1 file changed, 1 insertion(+) (limited to 'sql/table.cc') 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) -- cgit v1.2.1