Bug #11392 fulltext search bug
Submitted: 16 Jun 2005 17:08 Modified: 15 Nov 2007 7:16
Reporter: Leo Cardia Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: MyISAM storage engine Severity:S1 (Critical)
Version:4.1 (4.1.22) OS:Linux (rhel4, CentOS 4)
Assigned to: Sergey Vojtovich CPU Architecture:Any
Tags: crash, double quotes, fulltext, quotes

[16 Jun 2005 17:08] Leo Cardia
Description:
mysql> select count(*) from cdb where match(subject) against('test' IN BOOLEAN MODE);       
+----------+
| count(*) |
+----------+
|      290 |
+----------+
1 row in set (0.01 sec)

mysql> select count(*) from cdb where match(subject) against('"test"' IN BOOLEAN MODE);
ERROR 2013 (HY000): Lost connection to MySQL server during query
mysql> select count(*) from cdb where match(subject) against('"test"' IN BOOLEAN MODE);
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id:    1
Current database: searchdb

it doesn't work with "" operation

How to repeat:
mysql> select count(*) from cdb where match(subject) against('"test"' IN BOOLEAN MODE);
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id:    1
Current database: searchdb
mysql> select count(*) from cdb where match(subject) against('"test"' IN BOOLEAN MODE);
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id:    1
Current database: searchdb
[17 Jun 2005 19:31] MySQL Verification Team
Hello,

Thank you for the report, but I wasn't able reproduce it with my test data.
Please, upload your table for testing.
What exactly 4.1 version do you use?
[18 Jun 2005 9:19] Leo Cardia
mysql version is 4.1.10a rhel4 default.

and the table size is over 300MB

structures like as below

+----------+-----------------------+------+-----+---------+-------+
| Field    | Type                  | Null | Key | Default | Extra |
+----------+-----------------------+------+-----+---------+-------+
| board    | varchar(12)           |      |     |         |       |
| no       | int(10) unsigned      |      |     | 0       |       |
| memo     | text                  | YES  | MUL | NULL    |       |
| name     | varchar(20)           |      | MUL |         |       |
| subject  | varchar(250)          |      | MUL |         |       |
| postdate | int(13)               |      |     | 0       |       |
| hit      | mediumint(8)          |      |     | 0       |       |
| vote     | mediumint(8)          |      |     | 0       |       |
| cmt      | mediumint(8) unsigned |      |     | 0       |       |
+----------+-----------------------+------+-----+---------+-------+
9 rows in set (0.00 sec)

Full text search setting on memo, subject field.
name field using regular index.

mysql> select count(*) from sdb;
+----------+
| count(*) |
+----------+
|   264700 |
+----------+
1 row in set (0.00 sec)

collabration is unicode general ci, and def char set using utf8
client is same condition
[18 Jun 2005 14:42] Leo Cardia
and i got an wrong result when i querying with hyphen

we using on non-commercial camera club

so many search value like as '70-200' '18-70' '70-300' 
such as focal lens types.

but.. i think mysql searching 70 and 200 , 18 and 70 
result so many differ than index search
[21 Jun 2005 19:43] Aleksey Kishkin
"MySQL server has gone away" usualy means mysql server crashed. Do you have any info in the log file?  Could you check your log file? it's file with .err suffix in the data directory.

Did you try mysql binaries, that had been buit in MySQL AB? or from linux distributive?
[21 Jul 2005 23:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
[15 May 2007 23:51] Chris Calender
Re-opening bug as I've been able to reproduce it, albiet with certain circumstances:

So far, only reproducible on RHEL4, 64-bit, MySQL 4.1.22 64-bit, must be the RPM version (not tarball), and only with certain data.

Also, reported to not work on CentOS 4.4 64-bit, MySQL 4.1.22 64-bit.

Uname -a output:

Linux 2.6.9-22.0.1.ELsmp #1 SMP Tue Oct 18 18:39:02 EDT 2005 x86_64 x86_64 x86_64 GNU/Linux
[16 May 2007 0:02] Chris Calender
Does not have to be the RPM, but does have to be with certain data loaded.
[29 May 2007 19:59] Leo Cardia
2 years ago.

the same machine (centos4 / 64bit system) is still running.

and our whole machine is 64bit with centos 4 and 5

exact machine information is belown (what trouble occur)

amd opteron 275 dual / 8gb memory / centos 4 x64
we using rpm mysql ( centos 4 retaii )

there is another fulltext search bug  the hyphen problems.
but it can avoid replace hyphen to another character.

anyway we thought fts is very unstable. and actually doesn't fit to korean morphological environment. (without morphological parser or analyzer)

so we stop to using.
[25 Oct 2007 21:20] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/36381

ChangeSet@1.2688, 2007-10-26 02:09:13+05:00, svoj@mysql.com +3 -0
  BUG#11392 - fulltext search bug
  
  Fulltext boolean mode phrase search may crash server on platforms
  where size of pointer is not equal to size of unsigned integer
  (in other words some 64-bit platforms).
  
  The problem was integer overflow.
  
  Affects 4.1 only.
[30 Oct 2007 11:43] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/36633

ChangeSet@1.2688, 2007-10-30 14:45:55+04:00, svoj@mysql.com +3 -0
  BUG#11392 - fulltext search bug
  
  Fulltext boolean mode phrase search may crash server on platforms
  where size of pointer is not equal to size of unsigned integer
  (in other words some 64-bit platforms).
  
  The problem was integer overflow.
[30 Oct 2007 11:44] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/36634

ChangeSet@1.2688, 2007-10-30 14:46:43+04:00, svoj@mysql.com +3 -0
  BUG#11392 - fulltext search bug
  
  Fulltext boolean mode phrase search may crash server on platforms
  where size of pointer is not equal to size of unsigned integer
  (in other words some 64-bit platforms).
  
  The problem was integer overflow.
  
  Affects 4.1 only.
[14 Nov 2007 9:41] Bugs System
Pushed into 6.0.4-alpha
[14 Nov 2007 9:46] Bugs System
Pushed into 5.1.23-rc
[14 Nov 2007 9:50] Bugs System
Pushed into 5.0.52
[14 Nov 2007 9:55] Bugs System
Pushed into 4.1.24
[15 Nov 2007 7:16] MC Brown
A note has been added to the 4.1.24, 5.0.52, 5.1.23, and 6.0.4 changelogs: 

Performing a full text search on a table could cause a crash on
        a 64-bit platforms with certain characteristics. Searches that
        were known to cause a crash with certain datasets included
        numerical values and strings where the match string included
        data enclosed in single or double quotes.
[6 Feb 2008 2:47] Paul DuBois
Correction: Fixed in 4.1.24 only.