|
Thanks for reporting this. As a workaround, you could try to set
optimizer_switch='derived_merge=off'
===========================
SELECT * FROM ( SELECT 100 a, subsel.b FROM ( SELECT 200 b ) subsel ) tmp WHERE tmp.a;
Stack trace from 5.3 revno 3727:
#3 <signal handler called>
#4 0x00000000007211ee in TABLE_LIST::get_real_join_table (this=0x3228ce8) at table.cc:4494
#5 0x00000000005bf2a3 in Item_direct_view_ref::check_null_ref (this=0x322bae0) at item.h:2970
#6 0x00000000005bf520 in Item_direct_view_ref::val_int (this=0x322bae0) at item.h:3033
#7 0x00000000005f04ff in Arg_comparator::compare_int_signed (this=0x32292a0) at item_cmpfunc.cc:1168
#8 0x00000000005d05f0 in Arg_comparator::compare (this=0x32292a0) at item_cmpfunc.h:72
#9 0x00000000005f25d0 in Item_func_ne::val_int (this=0x32291e0) at item_cmpfunc.cc:1884
#10 0x00000000005d24a7 in eval_const_cond (cond=0x32291e0) at item_func.cc:63
#11 0x000000000074968f in remove_eq_conds (thd=0x321dda8, cond=0x32291e0, cond_value=0x32296d0) at sql_select.cc:13714
#12 0x0000000000748435 in optimize_cond (join=0x32293e0, conds=0x32291e0, join_list=0x32209b0, ignore_on_conds=false, cond_value=0x32296d0, cond_equal=0x32297f8) at sql_select.cc:13237
#13 0x00000000007282ee in JOIN::optimize (this=0x32293e0) at sql_select.cc:1028
#14 0x000000000072f4b7 in mysql_select (thd=0x321dda8, rref_pointer_array=0x3220a98, tables=0x3228ce8, wild_num=1, fields=..., conds=0x32291e0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147764736, result=0x3216c80, unit=0x3220338, select_lex=0x3220840) at sql_select.cc:2995
#15 0x0000000000725fad in handle_select (thd=0x321dda8, lex=0x3220298, result=0x3216c80, setup_tables_done_option=0) at sql_select.cc:288
#16 0x00000000006b4ca8 in execute_sqlcom_select (thd=0x321dda8, all_tables=0x3228ce8) at sql_parse.cc:5172
#17 0x00000000006abe44 in mysql_execute_command (thd=0x321dda8) at sql_parse.cc:2305
#18 0x00000000006b760f in mysql_parse (thd=0x321dda8, rawbuf=0x3214cc0 "SELECT * FROM ( SELECT 100 a, subsel.b FROM ( SELECT 200 b ) subsel ) tmp WHERE tmp.a", length=86, found_semicolon=0x7f8c04b8ccb8) at sql_parse.cc:6173
#19 0x00000000006a9624 in dispatch_command (command=COM_QUERY, thd=0x321dda8, packet=0x3210c69 "SELECT * FROM ( SELECT 100 a, subsel.b FROM ( SELECT 200 b ) subsel ) tmp WHERE tmp.a", packet_length=86) at sql_parse.cc:1243
#20 0x00000000006a8910 in do_command (thd=0x321dda8) at sql_parse.cc:923
#21 0x00000000006a5799 in handle_one_connection (arg=0x321dda8) at sql_connect.cc:1231
#22 0x00007f8c03d3eb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#23 0x00007f8c030e1a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
|