Another crash, slightly different backtrace
SELECT ST_DIFFERENCE ( MULTIPOLYGONFROMTEXT( ' MULTIPOLYGON( ( (3 5, 2 5, 2 4, 3 4, 3 5) ) , ( ( 2 2 , 5 2 , 4 9 , 2 7 , 2 2 ) ) ) ' ) , MULTILINESTRINGFROMTEXT( ' MULTILINESTRING( ( 2 9 , 9 0 , 5 2 , 3 8 ) , ( 0 1 , 2 5 , 4 5 , 3 3 ) , ( 2 2 , 2 1 , 9 5 , 7 5 , 8 8 ) , ( 2 2 , 2 8 , 8 8 , 8 2 , 2 2 ) , ( 4 4 , 4 6 , 6 6 , 6 4 , 4 4 ) ) ' ) );
#3 <signal handler called> #4 0x0000000000776a8a in Gcalc_operation_reducer::get_result_thread (this=0x10bfeed0, cur=0xa5a5a5a5a5a5a5a5, storage=0x10bfee68, move_upward=1) at gcalc_tools.cc:1027 #5 0x0000000000776c43 in Gcalc_operation_reducer::get_line_result (this=0x10bfeed0, cur=0x10c2e640, storage=0x10bfee68) at gcalc_tools.cc:1095 #6 0x0000000000776f0d in Gcalc_operation_reducer::get_result (this=0x10bfeed0, storage=0x10bfee68) at gcalc_tools.cc:1137 #7 0x0000000000645f1e in Item_func_spatial_operation::val_str (this=0x10bfec40, str_value=0x40d1a400) at item_geofunc.cc:1030 #8 0x000000000059dcbf in Item::send (this=0x10bfec40, protocol=0x10bb76f8, buffer=0x40d1a400) at item.cc:5905 #9 0x0000000000680b89 in select_send::send_data (this=0x10bff118, items=...) at sql_class.cc:1919 #10 0x000000000075d540 in JOIN::exec (this=0x10c23bb0) at sql_select.cc:2069 #11 0x0000000000759a10 in mysql_select (thd=0x10bb72f8, rref_pointer_array=0x10bb9e48, tables=0x0, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147764736, result=0x10bff118, unit=0x10bb9740, select_lex=0x10bb9c28) at sql_select.cc:2885 #12 0x000000000075fdea in handle_select (thd=0x10bb72f8, lex=0x10bb96a0, result=0x10bff118, setup_tables_done_option=0) at sql_select.cc:283 #13 0x00000000006ad2bc in execute_sqlcom_select (thd=0x10bb72f8, all_tables=0x0) at sql_parse.cc:5082 #14 0x00000000006aef6f in mysql_execute_command (thd=0x10bb72f8) at sql_parse.cc:2227 #15 0x00000000006b7d07 in mysql_parse (thd=0x10bb72f8, rawbuf=0x10bfdea0 "SELECT\nST_DIFFERENCE (\nMULTIPOLYGONFROMTEXT( ' MULTIPOLYGON( ( (3 5, 2 5, 2 4, 3 4, 3 5) ) , ( ( 2 2 , 5 2 , 4 9 , 2 7 , 2 2 ) ) ) ' ) ,\nMULTILINESTRINGFROMTEXT( ' MULTILINESTRING( ( 2 9 , 9 0 , 5 "..., length=347, found_semicolon=0x40d1bf08) at sql_parse.cc:6083 #16 0x00000000006b8b9f in dispatch_command (command=COM_QUERY, thd=0x10bb72f8, packet=0x10bf4b29 "", packet_length=347) at sql_parse.cc:1206 #17 0x00000000006ba1b1 in do_command (thd=0x10bb72f8) at sql_parse.cc:904 #18 0x00000000006a4c63 in handle_one_connection (arg=0x10bb72f8) at sql_connect.cc:1177 #19 0x00000033b600673d in start_thread () from /lib64/libpthread.so.0 #20 0x00000033b58d40cd in clone () from /lib64/libc.so.6
Another crash, slightly different backtrace
SELECT
ST_DIFFERENCE (
MULTIPOLYGONF ROMTEXT( ' MULTIPOLYGON( ( (3 5, 2 5, 2 4, 3 4, 3 5) ) , ( ( 2 2 , 5 2 , 4 9 , 2 7 , 2 2 ) ) ) ' ) ,
MULTILINESTRI NGFROMTEXT( ' MULTILINESTRING( ( 2 9 , 9 0 , 5 2 , 3 8 ) , ( 0 1 , 2 5 , 4 5 , 3 3 ) , ( 2 2 , 2 1 , 9 5 , 7 5 , 8 8 ) , ( 2 2 , 2 8 , 8 8 , 8 2 , 2 2 ) , ( 4 4 , 4 6 , 6 6 , 6 4 , 4 4 ) ) ' )
);
#3 <signal handler called> _reducer: :get_result_ thread (this=0x10bfeed0, cur=0xa5a5a5a5a 5a5a5a5, storage=0x10bfee68, move_upward=1) _reducer: :get_line_ result (this=0x10bfeed0, cur=0x10c2e640, storage=0x10bfee68) at gcalc_tools.cc:1095 _reducer: :get_result (this=0x10bfeed0, storage=0x10bfee68) at gcalc_tools.cc:1137 spatial_ operation: :val_str (this=0x10bfec40, str_value= 0x40d1a400) at item_geofunc. cc:1030 0x10bb76f8, buffer=0x40d1a400) at item.cc:5905 send::send_ data (this=0x10bff118, items=...) at sql_class.cc:1919 array=0x10bb9e4 8, tables=0x0, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, options= 2147764736, result=0x10bff118, unit=0x10bb9740, select_ lex=0x10bb9c28) at sql_select.cc:2885 done_option= 0) at sql_select.cc:283 sqlcom_ select (thd=0x10bb72f8, all_tables=0x0) at sql_parse.cc:5082 command (thd=0x10bb72f8) at sql_parse.cc:2227 0x10bfdea0 "SELECT\ nST_DIFFERENCE (\nMULTIPOLYGON FROMTEXT( ' MULTIPOLYGON( ( (3 5, 2 5, 2 4, 3 4, 3 5) ) , ( ( 2 2 , 5 2 , 4 9 , 2 7 , 2 2 ) ) ) ' ) ,\nMULTILINESTR INGFROMTEXT( ' MULTILINESTRING( ( 2 9 , 9 0 , 5 "..., length=347, found_semicolon =0x40d1bf08) at sql_parse.cc:6083 one_connection (arg=0x10bb72f8) at sql_connect.cc:1177 libpthread. so.0
#4 0x0000000000776a8a in Gcalc_operation
at gcalc_tools.cc:1027
#5 0x0000000000776c43 in Gcalc_operation
#6 0x0000000000776f0d in Gcalc_operation
#7 0x0000000000645f1e in Item_func_
#8 0x000000000059dcbf in Item::send (this=0x10bfec40, protocol=
#9 0x0000000000680b89 in select_
#10 0x000000000075d540 in JOIN::exec (this=0x10c23bb0) at sql_select.cc:2069
#11 0x0000000000759a10 in mysql_select (thd=0x10bb72f8, rref_pointer_
group=0x0, having=0x0, proc_param=0x0, select_
#12 0x000000000075fdea in handle_select (thd=0x10bb72f8, lex=0x10bb96a0, result=0x10bff118, setup_tables_
#13 0x00000000006ad2bc in execute_
#14 0x00000000006aef6f in mysql_execute_
#15 0x00000000006b7d07 in mysql_parse (thd=0x10bb72f8,
rawbuf=
#16 0x00000000006b8b9f in dispatch_command (command=COM_QUERY, thd=0x10bb72f8, packet=0x10bf4b29 "", packet_length=347) at sql_parse.cc:1206
#17 0x00000000006ba1b1 in do_command (thd=0x10bb72f8) at sql_parse.cc:904
#18 0x00000000006a4c63 in handle_
#19 0x00000033b600673d in start_thread () from /lib64/
#20 0x00000033b58d40cd in clone () from /lib64/libc.so.6