Bug #74668 | Assertion `!thd->lex->context_analysi s_only' failed in Item_subselect::exec | ||
---|---|---|---|
Submitted: | 3 Nov 2014 10:00 | Modified: | 16 Feb 2015 20:36 |
Reporter: | Ramesh Sivaraman | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: DDL | Severity: | S3 (Non-critical) |
Version: | 5.6.20-debug, 5.6.22, 5.7.6 | OS: | Linux (CentOS 7) |
Assigned to: | CPU Architecture: | Any |
[3 Nov 2014 10:00]
Ramesh Sivaraman
[3 Nov 2014 10:10]
MySQL Verification Team
Hello Ramesh Sivaraman, Thank you for the bug report and test case. Confirmed that latest 5.6.22 debug build asserts. Thanks, Umes
[3 Nov 2014 10:11]
MySQL Verification Team
// 5.6.22 optimized build - Not affected mysql> DROP DATABASE test;CREATE DATABASE test;USE test; create TABLE t1(a int key,b int)ENGINE=INNODB; Query OK, 1 row affected (0.01 sec) Query OK, 1 row affected (0.01 sec) Database changed mysql> create TABLE t1(a int key,b int)ENGINE=INNODB; Query OK, 0 rows affected (0.02 sec) mysql> CREATE VIEW v1 AS SELECT 1 FROM t1 WHERE b=(SELECT a FROM t1 LIMIT 1); Query OK, 0 rows affected (0.00 sec) mysql> drop table t1; Query OK, 0 rows affected (0.01 sec) mysql> CREATE TABLE t1(a int,b int,c int,d int,KEY (a,b,c)) ENGINE=INNODB PARTITION BY KEY (a,b); CHECK TABLE test.v1,test.t1;Query OK, 0 rows affected (0.03 sec) mysql> CHECK TABLE test.v1,test.t1; +---------+-------+----------+----------+ | Table | Op | Msg_type | Msg_text | +---------+-------+----------+----------+ | test.v1 | check | status | OK | | test.t1 | check | status | OK | +---------+-------+----------+----------+
[3 Nov 2014 10:11]
MySQL Verification Team
2 rows in set (0.04 sec) // 5.6.22 Debug build mysql> DROP DATABASE test;CREATE DATABASE test;USE test; create TABLE t1(a int key,b int)ENGINE=INNODB; Query OK, 2 rows affected (0.05 sec) CREATE VIEW v1 AS SELECT 1 FROM t1 WHERE b=(SELECT a FROM t1 LIMIT 1); Query OK, 1 row affected (0.00 sec) Database changed mysql> create TABLE t1(a int key,b int)ENGINE=INNODB; drop table t1; CREATE TABLE t1(a int,b int,c int,d int,KEY (a,b,c)) ENGINE=INNODB PARTITION BY KEY (a,b); CHECK TABLE test.v1,test.t1;Query OK, 0 rows affected (0.04 sec) mysql> CREATE VIEW v1 AS SELECT 1 FROM t1 WHERE b=(SELECT a FROM t1 LIMIT 1); Query OK, 0 rows affected (0.03 sec) mysql> drop table t1; Query OK, 0 rows affected (0.02 sec) mysql> CREATE TABLE t1(a int,b int,c int,d int,KEY (a,b,c)) ENGINE=INNODB PARTITION BY KEY (a,b); Query OK, 0 rows affected (0.04 sec) mysql> CHECK TABLE test.v1,test.t1; ERROR 2013 (HY000): Lost connection to MySQL server during query (gdb) bt #0 0x0000003deb00c8ac in pthread_kill () from /lib64/libpthread.so.0 #1 0x0000000000b0011b in my_write_core (sig=6) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/mysys/stacktrace.c:422 #2 0x000000000077ecb8 in handle_fatal_signal (sig=6) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/signal_handler.cc:230 #3 <signal handler called> #4 0x0000003deac32625 in raise () from /lib64/libc.so.6 #5 0x0000003deac33e05 in abort () from /lib64/libc.so.6 #6 0x0000003deac2b74e in __assert_fail_base () from /lib64/libc.so.6 #7 0x0000003deac2b810 in __assert_fail () from /lib64/libc.so.6 #8 0x000000000099085c in Item_subselect::exec (this=0x7f67b4006d88) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/item_subselect.cc:616 #9 0x0000000000991e98 in Item_singlerow_subselect::val_int (this=0x7f67b4006d88) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/item_subselect.cc:1081 #10 0x00000000006b3917 in Item::save_in_field (this=0x7f67b4006d88, field=0x7f67b40600d0, no_conversions=true) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/item.cc:6335 #11 0x00000000006a5ddb in Item::save_in_field_no_warnings (this=0x7f67b4006d88, field=0x7f67b40600d0, no_conversions=true) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/item.cc:1505 #12 0x00000000009bcb2e in save_value_and_handle_conversion (tree=0x7f67d7db7a68, value=0x7f67b4006d88, comp_op=Item_func::EQ_FUNC, field=0x7f67b40600d0, impossible_cond_cause=0x7f67d7db7a60, memroot=0x7f67d7db9fd0) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/opt_range.cc:6634 #13 0x00000000009bd7a6 in get_mm_leaf (param=0x7f67d7db7fa0, conf_func=0x7f67b4012978, field=0x7f67b40600d0, key_part=0x7f67b401fbd0, type=Item_func::EQ_FUNC, value=0x7f67b4006d88) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/opt_range.cc:7005 #14 0x00000000009bc8cf in get_mm_parts (param=0x7f67d7db7fa0, cond_func=0x7f67b4012978, field=0x7f67b40600d0, type=Item_func::EQ_FUNC, value=0x7f67b4006d88, cmp_type=INT_RESULT) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/opt_range.cc:6546 #15 0x00000000009bb40f in get_func_mm_tree (param=0x7f67d7db7fa0, cond_func=0x7f67b4012978, field=0x7f67b40600d0, value=0x7f67b4006d88, cmp_type=INT_RESULT, inv=false) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/opt_range.cc:6110 #16 0x00000000009bb5ec in get_full_func_mm_tree (param=0x7f67d7db7fa0, cond_func=0x7f67b4012978, field_item=0x7f67b4006740, value=0x7f67b4006d88, inv=false) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/opt_range.cc:6210 #17 0x00000000009bc4d9 in get_mm_tree (param=0x7f67d7db7fa0, cond=0x7f67b4012978) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/opt_range.cc:6447 #18 0x00000000009b4466 in prune_partitions (thd=0x8199f00, table=0x7f67b405e2f0, pprune_cond=0x7f67b4012978) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/opt_range.cc:3278 #19 0x0000000000856abd in JOIN::prepare (this=0x7f67b401a938, tables_init=0x7f67b40061b8, wild_num=0, conds_init=0x7f67b4012978, og_num=0, order_init=0x0, group_init=0x0, having_init=0x0, select_lex_arg=0x7f67b40112a8, unit_arg=0x7f67b4010c60) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_resolver.cc:384 #20 0x00000000008bc47e in st_select_lex_unit::prepare (this=0x7f67b4010c60, thd_arg=0x8199f00, sel_result=0x7f67b401a878, additional_options=0) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_union.cc:356 #21 0x00000000007f79b3 in mysql_derived_prepare (thd=0x8199f00, lex=0x819c070, derived=0x7f67b40050c0) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_derived.cc:195 #22 0x00000000007f7805 in mysql_handle_single_derived (lex=0x819c070, derived=0x7f67b40050c0, processor=0x7f781c <mysql_derived_prepare(THD*, LEX*, TABLE_LIST*)>) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_derived.cc:115 #23 0x00000000007f7720 in mysql_handle_derived (lex=0x819c070, processor=0x7f781c <mysql_derived_prepare(THD*, LEX*, TABLE_LIST*)>) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_derived.cc:77 #24 0x00000000007c5047 in open_and_lock_tables (thd=0x8199f00, tables=0x7f67b40050c0, derived=true, flags=0, prelocking_strategy=0x7f67d7dba630) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_base.cc:5735 #25 0x00000000007b6a5e in open_and_lock_tables (thd=0x8199f00, tables=0x7f67b40050c0, derived=true, flags=0) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_base.h:472 #26 0x00000000009e6775 in mysql_admin_table (thd=0x8199f00, tables=0x7f67b40050c0, check_opt=0x819ce28, operator_name=0x10bebf4 "check", lock_type=TL_READ_NO_INSERT, open_for_modify=false, repair_table_use_frm=false, extra_open_options=32, prepare_func=0, operator_func=(int (handler::*)(handler *, THD *, HA_CHECK_OPT *)) 0x692fd6 <handler::ha_check(THD*, HA_CHECK_OPT*)>, view_operator_func=0x8cb214 <view_checksum(THD*, TABLE_LIST*)>) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_admin.cc:393 #27 0x00000000009e919d in Sql_cmd_check_table::execute (this=0x7f67b4005bc0, thd=0x8199f00) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_admin.cc:1108 #28 0x0000000000834a46 in mysql_execute_command (thd=0x8199f00) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_parse.cc:4945 #29 0x00000000008380e1 in mysql_parse (thd=0x8199f00, rawbuf=0x7f67b4004fd0 "CHECK TABLE test.v1,test.t1", length=27, parser_state=0x7f67d7dbc680) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_parse.cc:6357 #30 0x000000000082aa63 in dispatch_command (command=COM_QUERY, thd=0x8199f00, packet=0x82c9861 "", packet_length=27) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_parse.cc:1332 #31 0x0000000000829ac8 in do_command (thd=0x8199f00) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_parse.cc:1034 #32 0x00000000007f0f17 in do_handle_one_connection (thd_arg=0x8199f00) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_connect.cc:982 #33 0x00000000007f09e8 in handle_one_connection (arg=0x8199f00) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/sql/sql_connect.cc:898 #34 0x0000000000e64c25 in pfs_spawn_thread (arg=0x828cf90) at /pb2/build/sb_0-13562263-1414689457.82/mysqlcom-pro-5.6.22/storage/perfschema/pfs.cc:1860 #35 0x0000003deb0079d1 in start_thread () from /lib64/libpthread.so.0 #36 0x0000003deace89dd in clone () from /lib64/libc.so.6
[3 Nov 2014 10:14]
MySQL Verification Team
// 5.7.6 only debug build affected (gdb) bt #0 0x0000003deb00c8ac in pthread_kill () from /lib64/libpthread.so.0 #1 0x0000000000f990a1 in my_write_core (sig=6) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/mysys/stacktrace.c:247 #2 0x000000000092d7cc in handle_fatal_signal (sig=6) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/signal_handler.cc:219 #3 <signal handler called> #4 0x0000003deac32625 in raise () from /lib64/libc.so.6 #5 0x0000003deac33e05 in abort () from /lib64/libc.so.6 #6 0x0000003deac2b74e in __assert_fail_base () from /lib64/libc.so.6 #7 0x0000003deac2b810 in __assert_fail () from /lib64/libc.so.6 #8 0x0000000000ba1131 in Item_subselect::exec (this=0x7f8034029928) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/item_subselect.cc:572 #9 0x0000000000ba281a in Item_singlerow_subselect::val_int (this=0x7f8034029928) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/item_subselect.cc:1039 #10 0x00000000009b8983 in Item::save_in_field (this=0x7f8034029928, field=0x7f803401c9e0, no_conversions=true) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/item.cc:6405 #11 0x00000000009aac87 in Item::save_in_field_no_warnings (this=0x7f8034029928, field=0x7f803401c9e0, no_conversions=true) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/item.cc:1583 #12 0x0000000000e538bb in save_value_and_handle_conversion (tree=0x7f80f81b9948, value=0x7f8034029928, comp_op=Item_func::EQ_FUNC, field=0x7f803401c9e0, impossible_cond_cause=0x7f80f81b9940, memroot=0x7f80f81bbdf0) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/opt_range.cc:6951 #13 0x0000000000e5434d in get_mm_leaf (param=0x7f80f81b9dc0, conf_func=0x7f8034029a28, field=0x7f803401c9e0, key_part=0x7f803402dc80, type=Item_func::EQ_FUNC, value=0x7f8034029928) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/opt_range.cc:7278 #14 0x0000000000e535ef in get_mm_parts (param=0x7f80f81b9dc0, cond_func=0x7f8034029a28, field=0x7f803401c9e0, type=Item_func::EQ_FUNC, value=0x7f8034029928, cmp_type=INT_RESULT) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/opt_range.cc:6851 #15 0x0000000000e51e2b in get_func_mm_tree (param=0x7f80f81b9dc0, predicand=0x7f8034023c68, cond_func=0x7f8034029a28, value=0x7f8034029928, cmp_type=INT_RESULT, inv=false) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/opt_range.cc:6317 #16 0x0000000000e5202e in get_full_func_mm_tree (param=0x7f80f81b9dc0, predicand=0x7f8034023c68, op=0x7f8034029a28, value=0x7f8034029928, inv=false) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/opt_range.cc:6425 #17 0x0000000000e5300c in get_mm_tree (param=0x7f80f81b9dc0, cond=0x7f8034029a28) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/opt_range.cc:6669 #18 0x0000000000e4a5a2 in prune_partitions (thd=0x7f8034000d30, table=0x7f8034026420, pprune_cond=0x7f8034029a28) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/opt_range.cc:3346 #19 0x0000000000ce9e52 in st_select_lex::prepare (this=0x7f8034006e00, join=0x7f8034029e38) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_resolver.cc:375 #20 0x0000000000d4f131 in st_select_lex_unit::prepare (this=0x7f8034022a38, thd_arg=0x7f8034000d30, sel_result=0x7f8034029d78, additional_options=0) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_union.cc:592 #21 0x0000000000c6a75d in mysql_derived_prepare (thd=0x7f8034000d30, lex=0x7f80340030a0, derived=0x7f8034005dd0) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_derived.cc:186 #22 0x0000000000c6a5af in mysql_handle_single_derived (lex=0x7f80340030a0, derived=0x7f8034005dd0, processor=0xc6a5c6 <mysql_derived_prepare(THD*, LEX*, TABLE_LIST*)>) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_derived.cc:106 #23 0x0000000000c6a512 in mysql_handle_derived (lex=0x7f80340030a0, processor=0xc6a5c6 <mysql_derived_prepare(THD*, LEX*, TABLE_LIST*)>) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_derived.cc:77 #24 0x0000000000c39f31 in open_and_lock_tables (thd=0x7f8034000d30, tables=0x7f8034005dd0, derived=true, flags=0, prelocking_strategy=0x7f80f81bc450) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_base.cc:6058 #25 0x00000000009432b2 in open_and_lock_tables (thd=0x7f8034000d30, tables=0x7f8034005dd0, derived=true, flags=0) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_base.h:525 #26 0x0000000000e795be in mysql_admin_table (thd=0x7f8034000d30, tables=0x7f8034005dd0, check_opt=0x7f8034003528, operator_name=0x168737c "check", lock_type=TL_READ_NO_INSERT, open_for_modify=false, repair_table_use_frm=false, extra_open_options=32, prepare_func=0, operator_func= (int (handler::*)(handler *, THD *, HA_CHECK_OPT *)) 0x997fce <handler::ha_check(THD*, HA_CHECK_OPT*)>, view_operator_func=0xd5ec7f <view_checksum(THD*, TABLE_LIST*)>) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_admin.cc:401 #27 0x0000000000e7c0b3 in Sql_cmd_check_table::execute (this=0x7f8034006900, thd=0x7f8034000d30) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_admin.cc:1132 #28 0x0000000000cbb4f7 in mysql_execute_command (thd=0x7f8034000d30) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:4785 #29 0x0000000000cbce6a in mysql_parse (thd=0x7f8034000d30, parser_state=0x7f80f81be660) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:5397 #30 0x0000000000cb0f2c in dispatch_command (command=COM_QUERY, thd=0x7f8034000d30, packet=0x7f8034009a61 "", packet_length=27) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:1249 #31 0x0000000000cafbd4 in do_command (thd=0x7f8034000d30) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:833 #32 0x0000000000dbe89c in handle_connection (arg=0xe1fdb00) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/conn_handler/connection_handler_per_thread.cc:298 #33 0x000000000138347f in pfs_spawn_thread (arg=0xe1534a0) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/storage/perfschema/pfs.cc:2137 #34 0x0000003deb0079d1 in start_thread () from /lib64/libpthread.so.0 #35 0x0000003deace89dd in clone () from /lib64/libc.so.6
[3 Nov 2014 10:18]
MySQL Verification Team
// 5.5 latest debug build doesn't seem to be affected [root@cluster-repo mysql-5.5.41]# bin/mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.5.41-debug MySQL Community Server - Debug (GPL) Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> DROP DATABASE test;CREATE DATABASE test;USE test; Query OK, 0 rows affected (0.00 sec) Query OK, 1 row affected (0.00 sec) Database changed mysql> create TABLE t1(a int key,b int)ENGINE=INNODB; CREATE VIEW v1 AS SELECT 1 FROM t1 WHERE b=(SELECT a FROM t1 LIMIT 1); drop table t1; Query OK, 0 rows affected (0.01 sec) mysql> CREATE VIEW v1 AS SELECT 1 FROM t1 WHERE b=(SELECT a FROM t1 LIMIT 1); CREATE TABLE t1(a int,b int,c int,d int,KEY (a,b,c)) ENGINE=INNODB PARTITION BY KEY (a,b); CHECK TABLE test.v1,test.t1;Query OK, 0 rows affected (0.04 sec) mysql> drop table t1; Query OK, 0 rows affected (0.00 sec) mysql> CREATE TABLE t1(a int,b int,c int,d int,KEY (a,b,c)) ENGINE=INNODB PARTITION BY KEY (a,b); Query OK, 0 rows affected (0.00 sec) mysql> CHECK TABLE test.v1,test.t1; +---------+-------+----------+----------+ | Table | Op | Msg_type | Msg_text | +---------+-------+----------+----------+ | test.v1 | check | status | OK | | test.t1 | check | status | OK | +---------+-------+----------+----------+ 2 rows in set (0.02 sec)
[16 Feb 2015 20:36]
Erlend Dahl
This is fixed by the push of WL#5275, so closing as fixed (in 5.7.6).