Bug #33227 MySQL crashed when creating FullText Index with large amount of data
Submitted: 13 Dec 2007 20:50 Modified: 16 Jan 2008 3:40
Reporter: Clement Ho Email Updates:
Status: No Feedback Impact on me:
None 
Category:MySQL Server: FULLTEXT search Severity:S1 (Critical)
Version:5.1.22 Beta OS:Windows (2003 Server)
Assigned to: CPU Architecture:Any
Tags: fulltext

[13 Dec 2007 20:50] Clement Ho
Description:
I have 10 millions records in my database.
I have tried to insert those record into a database which has custom FullText parser. But every time I insert the record to some point the MySQL will crashed.

I create a table that has already created with the Custom Fulltext index parser. Then I insert the data into a single table. It crashed.
I create a table that without any index. I insert the data into the table. It went well. Then I use "Alter table" to add Fulltext index with the Custom Fulltext index parser. It crashed.

The crash only happens when there is a large amount of data insert into the table in a fast pace. Such as I am using "load data local infile 'c:\\MainNews_ALL.csv' into Table tbl_mainnews fields terminated by ',' enclosed by '"' lines terminated by '\r\n';"

But when the data is insert into the table in a slower fashion. The server is running ok. It sounds like a memory management problem.

Here is the stack trace:
 	mysqld.exe!_mi_make_key(st_myisam_info * info=0x6e756f70, unsigned int keynr=673215332, unsigned char * key=0x39382443, const unsigned char * record=0x09a88cb0, unsigned __int64 filepos=5611671404)  Line 57 + 0x4 bytes	C
 	mysqld.exe!_ft_make_key(st_myisam_info * info=0x6e756f70, unsigned int keynr=673215332, unsigned char * keybuf=0x39382443, st_ft_word * wptr=0x6d20332e, unsigned __int64 filepos=2317504908047969385)  Line 297	C
 	206e6f69()	
 	mysqld.exe!mi_repair_by_sort(st_mi_check_param * param=, st_myisam_info * info=, const char * name=, int rep_quick=)  Line 2317 + 0x22 bytes	C
 	mysqld.exe!ha_myisam::repair(THD * thd=0x06568260, st_mi_check_param & param={...}, int do_optimize=0)  Line 1101	C++
 	mysqld.exe!ha_myisam::enable_indexes(unsigned int mode=2)  Line 1394 + 0x2e bytes	C++
 	mysqld.exe!ha_myisam::end_bulk_insert()  Line 1514 + 0x1a bytes	C++
 	mysqld.exe!copy_data_between_tables(st_table * from=0x0658f318, st_table * to=0x092a61b8, List<Create_field> & create={...}, int ignore=0, unsigned int order_num=0, st_order * order=0x00000000, unsigned long * copied=0x09a8e290, unsigned long * deleted=0x09a8e288, enum_enable_or_disable keys_onoff=LEAVE_AS_IS, int error_if_not_empty=0)  Line 6885 + 0xf bytes	C++
 	mysqld.exe!mysql_alter_table(THD * thd=0x06568260, char * new_db=0x09295d88, char * new_name=0x09295b48, st_ha_create_information * create_info=0x09a8f440, TABLE_LIST * table_list=0x09295b80, Alter_info * alter_info=0x09a8f4d0, unsigned int order_num=0, st_order * order=0x00000000, int ignore=0)  Line 6319 + 0x49 bytes	C++
 	mysqld.exe!mysql_execute_command(THD * thd=0x06568260)  Line 2469 + 0x48 bytes	C++
 	mysqld.exe!mysql_parse(THD * thd=0x06568260, const char * inBuf=0x092958a8, unsigned int length=298, const char * * found_semicolon=0x09a8fad0)  Line 5447	C++
 	mysqld.exe!dispatch_command(enum_server_command command=COM_QUERY, THD * thd=0x06568260, char * packet=0x0928d87d, unsigned int packet_length=299)  Line 955	C++
 	mysqld.exe!do_command(THD * thd=0x0000012b)  Line 712 + 0xe bytes	C++
 	mysqld.exe!handle_one_connection(void * arg=0x06568260)  Line 1099 + 0xa bytes	C++
 	mysqld.exe!pthread_start(void * param=0x0658e050)  Line 62 + 0x3 bytes	C
>	mysqld.exe!_threadstart(void * ptd=0x0658f0c8)  Line 196 + 0x6 bytes	C
 	kernel32.dll!77e6608b() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]	

How to repeat:
Use a large amount of data about 1 million. Use a FullText customer parser in 1 of the column. Then use "load data local file" command to import those data.

It will crash after a while.
[16 Dec 2007 3:40] MySQL Verification Team
Thank you for the bug report. Could you please provide the create table statement
and your my.ini file. Thanks in advance.
[17 Jan 2008 0: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".