[MDEV-7767] Aria Engine crashes MYSQL during Full Text IN BOOLEAN MODE Search Created: 2015-03-13  Updated: 2015-06-01  Resolved: 2015-06-01

Status: Closed
Project: MariaDB Server
Component/s: Full-text Search, Storage Engine - Aria
Affects Version/s: 10.0.17
Fix Version/s: N/A

Type: Bug Priority: Critical
Reporter: Andrew Assignee: Unassigned
Resolution: Cannot Reproduce Votes: 0
Labels: need_feedback
Environment:

Windows Server 2012 R2, 64x, 12gb of ram



 Description   

When attempting to execute this query

SELECT SQL_NO_CACHE data1, data2, data3 FROM table WHERE MATCH (index) AGAINST('"phrase"' IN BOOLEAN MODE) AND data2 > 0 ORDER BY data2 DESC

if any results are found, the entire mysql instance simply crashes.

There is no crash log, note it only crashes IF you find results. Table cooloation is utf8 unicode

My table is 2gb large with 6.3m rows.

EDIT:

I was able to produce a stack trace

Thread pointer: 0x0x1fe234c088
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
mysqld.exe!maria_ft_boolean_read_next()[ma_ft_boolean_search.c:833]
mysqld.exe!ha_maria::ft_read()[ha_maria.cc:3270]
mysqld.exe!FT_SELECT::get_next()[opt_range.h:1042]
mysqld.exe!find_all_keys()[filesort.cc:745]
mysqld.exe!filesort()[filesort.cc:298]
mysqld.exe!create_sort_index()[sql_select.cc:20760]
mysqld.exe!JOIN::exec_inner()[sql_select.cc:3051]
mysqld.exe!JOIN::exec()[sql_select.cc:2372]
mysqld.exe!mysql_select()[sql_select.cc:3312]
mysqld.exe!handle_select()[sql_select.cc:373]
mysqld.exe!execute_sqlcom_select()[sql_parse.cc:5258]
mysqld.exe!mysql_execute_command()[sql_parse.cc:2546]
mysqld.exe!mysql_parse()[sql_parse.cc:6518]
mysqld.exe!dispatch_command()[sql_parse.cc:1303]
mysqld.exe!do_command()[sql_parse.cc:1003]
mysqld.exe!threadpool_process_request()[threadpool_common.cc:233]
mysqld.exe!io_completion_callback()[threadpool_win.cc:568]
KERNEL32.DLL!VirtualUnlock()
ntdll.dll!LdrResolveDelayLoadedAPI()
ntdll.dll!RtlFreeUnicodeString()
KERNEL32.DLL!BaseThreadInitThunk()
ntdll.dll!RtlUserThreadStart()



 Comments   
Comment by Elena Stepanova [ 2015-03-13 ]

Hi,

Please specify which MariaDB version you are using, attach your cnf file(s), and paste the result of SHOW CREATE TABLE `table`, {SHOW TABLE STATUS LIKE 'table'}}, SHOW INDEX IN `table`. Feel free to obfuscate the output any way you want, as long as we can still see the general structure of the table and data.

Primitive test doesn't cause the crash:

MariaDB [test]> drop table if exists t;
Query OK, 0 rows affected (0.43 sec)
 
MariaDB [test]> create table t (f varchar(1024), fulltext index(f), data1 int, data2 int, data3 int) engine=Aria default charset utf8;
Query OK, 0 rows affected (0.62 sec)
 
MariaDB [test]> insert into t values ('"phrase" 1',1,1,1),('"phrase" 2',2,2,2);
Query OK, 2 rows affected (0.03 sec)
Records: 2  Duplicates: 0  Warnings: 0
 
MariaDB [test]> 
MariaDB [test]> SELECT SQL_NO_CACHE data1, data2, data3 FROM t WHERE MATCH (f) AGAINST('"phrase"' IN BOOLEAN MODE) AND data2 > 0 ORDER BY data2 DESC;
+-------+-------+-------+
| data1 | data2 | data3 |
+-------+-------+-------+
|     2 |     2 |     2 |
|     1 |     1 |     1 |
+-------+-------+-------+
2 rows in set (0.00 sec)

Comment by Andrew [ 2015-03-13 ]

Hi Elena,

I'm using the latest version of Maria, i've attached my config

http://andrew.im/my.ini

I can't run any querys on the plane, but here is a screenshot of the structure

http://i.imgur.com/d8NnsNN.png

I ran a similar query on a smaller Aria table and it was fine, i'm thinking it is a table issue, i dropped it completely and repopulated its data and it is still crashing.

Comment by Elena Stepanova [ 2015-03-13 ]

Hi Andrew,

Thanks for the config and the structure.
Regarding the version, MariaDB currently provides 6 major server versions, each of which has a latest version (5.1.67, 5.2.14, 5.3.12, 5.5.42, 10.0.17, 10.1.3), not counting Enterprise builds. So, could you please be more specific?

Thank you.

Comment by Andrew [ 2015-03-13 ]

I'm using 10.0.17

Comment by Elena Stepanova [ 2015-03-16 ]

I couldn't reproduce the crash with artificial data, even the same 6+M rows, so I agree, the data is important here.
Would you be able to upload your table (as a set of binary files or as a datadump) to our ftp.askmonty.org/private?

Comment by Elena Stepanova [ 2015-04-15 ]

Hi Andrew,

Any news on uploading the data?

Comment by Elena Stepanova [ 2015-06-01 ]

Sadly, since it's so dependent on the data, I have to close it as 'can't reproduce'; but please, if you can share the data or somehow else help as to narrow it down, by all means do so, comment on this issue and it will be re-opened.

Generated at Thu Feb 08 07:22:06 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.