Below is the list of changes that have just been committed into a local
5.0 repository of svoj. When svoj does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2007-11-01 16:27:01+04:00, svoj@stripped +1 -0
BUG#31950 - repair table hangs while processing multicolumn utf8
fulltext index
Having a table with broken multibyte characters may cause fulltext
parser dead-loop.
Since normally it is not possible to insert broken multibyte sequence
into a table, this problem may arise only if table is damaged.
Affected statements are:
- CHECK/REPAIR against damaged table with fulltext index;
- boolean mode phrase search against damaged table with or
without fulltext inex;
- boolean mode searches without index;
- nlq searches.
No test case for this fix. Affects 5.0 only.
myisam/ft_parser.c@stripped, 2007-11-01 16:27:00+04:00, svoj@stripped +1 -1
When skipping leading spaces, skip broken characters as well (broken
characters a identified by mbl == 0).
diff -Nrup a/myisam/ft_parser.c b/myisam/ft_parser.c
--- a/myisam/ft_parser.c 2007-06-27 18:10:18 +05:00
+++ b/myisam/ft_parser.c 2007-11-01 16:27:00 +04:00
@@ -188,7 +188,7 @@ byte ft_simple_get_word(CHARSET_INFO *cs
do
{
- for (;; doc+= mbl)
+ for (;; doc+= (mbl ? mbl : 1))
{
if (doc >= end) DBUG_RETURN(0);
if (true_word_char(cs, *doc)) break;