Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Duplicate
-
11.3.0, 11.1(EOL), 11.2(EOL)
-
None
-
Ubuntu 20.04
Description
Run these queries in debug build:
CREATE TABLE x ( x INT ) ;
INSERT INTO x ( x ) VALUES ( 1 ) ;
UPDATE x SET x = ( x , x , x ) < ( 1 , 1 , 1 ) , x = ( SELECT CASE WHEN ( 1 LIKE 1 * 1 ) THEN 1 / 1 ELSE x = 1 AND x = 1 AND CASE x WHEN 1 THEN 1 ELSE 1.000000 NOT LIKE 'x' END AND x = 1 END FROM x GROUP BY x UNION SELECT DISTINCT ( - 1.000000 >= - x = 1 AND x = 1 ) ISNULL FROM x ) IN ( SELECT DISTINCT x WHERE x BETWEEN ( SELECT x AS x FROM x AS x GROUP BY x HAVING x ) AND 1 ) WHERE x = 1 ;
Will trigger Assertion Failed.
GDB info:
#0 0x00007ffff6c0c00b in raise () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007ffff6beb859 in abort () from /lib/x86_64-linux-gnu/libc.so.6
#2 0x00007ffff6beb729 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#3 0x00007ffff6bfcfd6 in __assert_fail () from /lib/x86_64-linux-gnu/libc.so.6
#4 0x0000555557bc95b1 in Item_type_holder::val_decimal (this=0x629000169bd8) at /home/wx/mariadb-11.3.0/sql/item.cc:10743
#5 0x0000555556e14c67 in Item::val_decimal_result (this=0x629000169bd8, val=0x62900016a600) at /home/wx/mariadb-11.3.0/sql/item.h:1796
#6 0x0000555557bc6422 in Item_cache_decimal::cache_value (this=0x62900016a560) at /home/wx/mariadb-11.3.0/sql/item.cc:10455
#7 0x00005555578eb11e in Item_cache::has_value (this=0x62900016a560) at /home/wx/mariadb-11.3.0/sql/item.h:7171
#8 0x00005555578eb320 in Item_cache::is_null (this=0x62900016a560) at /home/wx/mariadb-11.3.0/sql/item.h:7180
#9 0x0000555557de425f in Item_in_subselect::disable_cond_guard_for_const_null_left_expr (this=0x629000164fa0, i=0) at /home/wx/mariadb-11.3.0/sql/item_subselect.h:669
#10 0x0000555557dba96a in Item_in_subselect::create_single_in_to_exists_cond (this=0x629000164fa0, join=0x62900016a650, where_item=0x62900016abe0, having_item=0x62900016abe8) at /home/wx/mariadb-11.3.0/sql/item_subselect.cc:2402
#11 0x0000555557dc06e0 in Item_in_subselect::create_in_to_exists_cond (this=0x629000164fa0, join_arg=0x62900016a650) at /home/wx/mariadb-11.3.0/sql/item_subselect.cc:2809
#12 0x00005555577bf65f in JOIN::choose_tableless_subquery_plan (this=0x62900016a650) at /home/wx/mariadb-11.3.0/sql/opt_subselect.cc:7043
#13 0x00005555572cab73 in JOIN::optimize_stage2 (this=0x62900016a650) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:3416
#14 0x00005555572c2f34 in JOIN::optimize_inner (this=0x62900016a650) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:2650
#15 0x00005555572bbba6 in JOIN::optimize (this=0x62900016a650) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:1944
#16 0x0000555557143851 in st_select_lex::optimize_unflattened_subqueries (this=0x62c0001e4f10, const_only=false) at /home/wx/mariadb-11.3.0/sql/sql_lex.cc:4916
#17 0x00005555577b7509 in JOIN::optimize_unflattened_subqueries (this=0x6290001657e0) at /home/wx/mariadb-11.3.0/sql/opt_subselect.cc:5864
#18 0x00005555572c91e7 in JOIN::optimize_stage2 (this=0x6290001657e0) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:3229
#19 0x00005555572c2f34 in JOIN::optimize_inner (this=0x6290001657e0) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:2650
#20 0x00005555572bbba6 in JOIN::optimize (this=0x6290001657e0) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:1944
#21 0x00005555573a8253 in Sql_cmd_dml::execute_inner (this=0x629000165240, thd=0x62c0001e0288) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:33401
#22 0x0000555557569d49 in Sql_cmd_update::execute_inner (this=0x629000165240, thd=0x62c0001e0288) at /home/wx/mariadb-11.3.0/sql/sql_update.cc:3069
#23 0x00005555573a7f0d in Sql_cmd_dml::execute (this=0x629000165240, thd=0x62c0001e0288) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:33350
#24 0x00005555571c1637 in mysql_execute_command (thd=0x62c0001e0288, is_called_from_prepared_stmt=false) at /home/wx/mariadb-11.3.0/sql/sql_parse.cc:4361
#25 0x00005555571d95e2 in mysql_parse (thd=0x62c0001e0288, rawbuf=0x6290000f52a8 "UPDATE x SET x = ( x , x , x ) < ( 1 , 1 , 1 ) , x = ( SELECT CASE WHEN ( 1 LIKE 1 * 1 ) THEN 1 / 1 ELSE x = 1 AND x = 1 AND CASE x WHEN 1 THEN 1 ELSE 1.000000 NOT LIKE 'x' END AND x = 1 END FROM x GR"..., length=391, parser_state=0x7fffe323f870) at /home/wx/mariadb-11.3.0/sql/sql_parse.cc:7734
#26 0x00005555571b1237 in dispatch_command (command=COM_QUERY, thd=0x62c0001e0288, packet=0x6290000fa289 " UPDATE x SET x = ( x , x , x ) < ( 1 , 1 , 1 ) , x = ( SELECT CASE WHEN ( 1 LIKE 1 * 1 ) THEN 1 / 1 ELSE x = 1 AND x = 1 AND CASE x WHEN 1 THEN 1 ELSE 1.000000 NOT LIKE 'x' END AND x = 1 END FROM x G"..., packet_length=395, blocking=true) at /home/wx/mariadb-11.3.0/sql/sql_parse.cc:1893
#27 0x00005555571adf7c in do_command (thd=0x62c0001e0288, blocking=true) at /home/wx/mariadb-11.3.0/sql/sql_parse.cc:1406
#28 0x000055555768e557 in do_handle_one_connection (connect=0x611000050708, put_in_cache=true) at /home/wx/mariadb-11.3.0/sql/sql_connect.cc:1445
#29 0x000055555768deb4 in handle_one_connection (arg=0x6110000505c8) at /home/wx/mariadb-11.3.0/sql/sql_connect.cc:1347
#30 0x00005555582fa350 in pfs_spawn_thread (arg=0x618000006908) at /home/wx/mariadb-11.3.0/storage/perfschema/pfs.cc:2201
#31 0x00007ffff7115609 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#32 0x00007ffff6ce8133 in clone () from /lib/x86_64-linux-gnu/libc.so.6
Attachments
Issue Links
- duplicates
-
MDEV-32700 Assertion Failed at /mariadb-11.3.0/sql/item.cc:10737
- Closed