CREATE TABLE t0 ( c19 DECIMAL ( 36 ) DEFAULT ( 67 ) ) ;
INSERT INTO t0 VALUES ( -47 ) , ( 31 ) ;
ALTER TABLE t0 ADD COLUMN c33 INT AFTER c19 ;
INSERT INTO t0 VALUES ( DEFAULT , DEFAULT ) , ( DEFAULT , DEFAULT ) ;
SELECT t1 . c25 AS c16 FROM ( SELECT NOT COUNT( * ) OVER ( PARTITION BY t0 . c33 , AVG ( c33 ) OVER ( PARTITION BY -119 , 125 , -66 , 27 ) IN ( SELECT -100 AS c57 FROM t0 ) , t0 . c33 , t0 . c19 ) - ~ EXP ( t0 . c19 ) + CONVERT ( c33 , UNSIGNED ) % RAND ( ) AS c25 FROM t0 GROUP BY c33 , c19 ) AS t1 JOIN t0 ON t0 . c19 = t0 . c19 ;
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 0x0000555557b897ab in Item_field::val_real (this=0x6290000f6458) at /home/wx/mariadb-11.3.0/sql/item.cc:3334
#5 0x0000555557df7be1 in Aggregator_simple::arg_val_real (this=0x6290001a1348) at /home/wx/mariadb-11.3.0/sql/item_sum.cc:1833
#6 0x0000555557df66b7 in Item_sum_sum::add_helper (this=0x6290000f6580, perform_removal=false) at /home/wx/mariadb-11.3.0/sql/item_sum.cc:1695
#7 0x0000555557df5845 in Item_sum_sum::add (this=0x6290000f6580) at /home/wx/mariadb-11.3.0/sql/item_sum.cc:1622
#8 0x0000555557dfad86 in Item_sum_avg::add (this=0x6290000f6580) at /home/wx/mariadb-11.3.0/sql/item_sum.cc:2047
#9 0x00005555579135a9 in Frame_cursor::add_value_to_items (this=0x6290001a1378) at /home/wx/mariadb-11.3.0/sql/sql_window.cc:1166
#10 0x0000555557915cdd in Frame_range_current_row_bottom::pre_next_partition (this=0x6290001a1378, rownum=0) at /home/wx/mariadb-11.3.0/sql/sql_window.cc:1576
#11 0x0000555557913cfb in Cursor_manager::notify_cursors_partition_changed (this=0x60300018aea0, rownum=0) at /home/wx/mariadb-11.3.0/sql/sql_window.cc:1225
#12 0x000055555790ed44 in compute_window_func (thd=0x62c0001e0288, window_functions=..., cursor_managers=..., tbl=0x6220000241a8, filesort_result=0x6150001d4a00) at /home/wx/mariadb-11.3.0/sql/sql_window.cc:2907
#13 0x000055555790f54d in Window_func_runner::exec (this=0x62900019ae00, thd=0x62c0001e0288, tbl=0x6220000241a8, filesort_result=0x6150001d4a00) at /home/wx/mariadb-11.3.0/sql/sql_window.cc:3039
#14 0x000055555790f79c in Window_funcs_sort::exec (this=0x62900019adf8, join=0x6290001958b0, keep_filesort_result=false) at /home/wx/mariadb-11.3.0/sql/sql_window.cc:3067
#15 0x00005555579105c8 in Window_funcs_computation::exec (this=0x62900019add0, join=0x6290001958b0, keep_last_filesort_result=false) at /home/wx/mariadb-11.3.0/sql/sql_window.cc:3196
#16 0x00005555573a1ea2 in AGGR_OP::end_send (this=0x6290001990c8) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:32300
#17 0x000055555735ebd8 in sub_select_postjoin_aggr (join=0x6290001958b0, join_tab=0x6290001982d0, end_of_records=true) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:23128
#18 0x000055555735f713 in sub_select (join=0x6290001958b0, join_tab=0x629000197e58, end_of_records=true) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:23378
#19 0x000055555735dbe3 in do_select (join=0x6290001958b0, procedure=0x0) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:22963
#20 0x00005555572dbfe9 in JOIN::exec_inner (this=0x6290001958b0) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:4941
#21 0x00005555572d93a0 in JOIN::exec (this=0x6290001958b0) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:4718
#22 0x00005555572ddbab in mysql_select (thd=0x62c0001e0288, tables=0x629000190458, fields=..., conds=0x0, og_num=3, order=0x0, group=0x6290000f63e0, having=0x0, proc_param=0x0, select_options=2201188305408, result=0x629000193ed8, unit=0x629000190ef0, select_lex=0x6290000f5c10) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:5249
#23 0x00005555570d9bea in mysql_derived_fill (thd=0x62c0001e0288, lex=0x62c0001e45f8, derived=0x629000191788) at /home/wx/mariadb-11.3.0/sql/sql_derived.cc:1266
#24 0x00005555570d27b6 in mysql_handle_single_derived (lex=0x62c0001e45f8, derived=0x629000191788, phases=96) at /home/wx/mariadb-11.3.0/sql/sql_derived.cc:200
#25 0x000055555732a50c in st_join_table::preread_init (this=0x62900019f2a8) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:16029
#26 0x000055555735f8c8 in sub_select (join=0x6290001952a8, join_tab=0x62900019f2a8, end_of_records=false) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:23392
#27 0x000055555735dadd in do_select (join=0x6290001952a8, procedure=0x0) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:22961
#28 0x00005555572dbfe9 in JOIN::exec_inner (this=0x6290001952a8) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:4941
#29 0x00005555572d93a0 in JOIN::exec (this=0x6290001952a8) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:4718
#30 0x00005555572ddbab in mysql_select (thd=0x62c0001e0288, tables=0x629000191788, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2165049856, result=0x629000193cc8, unit=0x62c0001e46d8, select_lex=0x6290000f55b0) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:5249
#31 0x00005555572ad18a in handle_select (thd=0x62c0001e0288, lex=0x62c0001e45f8, result=0x629000193cc8, setup_tables_done_option=0) at /home/wx/mariadb-11.3.0/sql/sql_select.cc:628
#32 0x00005555571ce583 in execute_sqlcom_select (thd=0x62c0001e0288, all_tables=0x629000191788) at /home/wx/mariadb-11.3.0/sql/sql_parse.cc:6013
#33 0x00005555571becf6 in mysql_execute_command (thd=0x62c0001e0288, is_called_from_prepared_stmt=false) at /home/wx/mariadb-11.3.0/sql/sql_parse.cc:3912
#34 0x00005555571d95e2 in mysql_parse (thd=0x62c0001e0288, rawbuf=0x6290000f52a8 "SELECT t1 . c25 AS c16 FROM ( SELECT NOT COUNT( * ) OVER ( PARTITION BY t0 . c33 , AVG ( c33 ) OVER ( PARTITION BY -119 , 125 , -66 , 27 ) IN ( SELECT -100 AS c57 FROM t0 ) , t0 . c33 , t0 . c19 ) - ~"..., length=330, parser_state=0x7fffd0e15870) at /home/wx/mariadb-11.3.0/sql/sql_parse.cc:7734
#35 0x00005555571b1237 in dispatch_command (command=COM_QUERY, thd=0x62c0001e0288, packet=0x6290000fa289 "", packet_length=333, blocking=true) at /home/wx/mariadb-11.3.0/sql/sql_parse.cc:1893
#36 0x00005555571adf7c in do_command (thd=0x62c0001e0288, blocking=true) at /home/wx/mariadb-11.3.0/sql/sql_parse.cc:1406
#37 0x000055555768e557 in do_handle_one_connection (connect=0x6110000465c8, put_in_cache=true) at /home/wx/mariadb-11.3.0/sql/sql_connect.cc:1445
#38 0x000055555768deb4 in handle_one_connection (arg=0x611000046488) at /home/wx/mariadb-11.3.0/sql/sql_connect.cc:1347
#39 0x00005555582fa350 in pfs_spawn_thread (arg=0x618000005508) at /home/wx/mariadb-11.3.0/storage/perfschema/pfs.cc:2201
#40 0x00007ffff7115609 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#41 0x00007ffff6ce8133 in clone () from /lib/x86_64-linux-gnu/libc.so.6
Attachments
Issue Links
duplicates
MDEV-32415Nested window funcs? SEGV at /mariadb-11.3.0/sql/item_func.h:771
Thanks!
Repeatable on 10.4-11.2
mysqld: /10.4/src/sql/item.cc:3257: virtual double Item_field::val_real(): Assertion `fixed == 1' failed.
231108 11:19:34 [ERROR] mysqld got signal 6 ;
Server version: 10.4.32-MariaDB-debug-log source revision: e5a5573f782723e40c372f38346a60b1ccc644d6
/lib/x86_64-linux-gnu/libc.so.6(+0x33fd6)[0x7f5310aa4fd6]
sql/item.cc:3258(Item_field::val_real())[0x5624ed613ad5]
sql/item_sum.cc:1814(Aggregator_simple::arg_val_real())[0x5624ed82b41d]
sql/item_sum.cc:1675(Item_sum_sum::add_helper(bool))[0x5624ed829dfd]
sql/item_sum.cc:1603(Item_sum_sum::add())[0x5624ed828f8b]
sql/item_sum.cc:2026(Item_sum_avg::add())[0x5624ed82e7de]
sql/sql_window.cc:1164(Frame_cursor::add_value_to_items())[0x5624ed3b06b3]
sql/sql_window.cc:1577(Frame_range_current_row_bottom::pre_next_partition(unsigned long long))[0x5624ed3b2de7]
sql/sql_window.cc:1224(Cursor_manager::notify_cursors_partition_changed(unsigned long long))[0x5624ed3b0e05]
sql/sql_window.cc:2907(compute_window_func(THD*, List<Item_window_func>&, List<Cursor_manager>&, TABLE*, SORT_INFO*))[0x5624ed3abdb4]
sql/sql_window.cc:3030(Window_func_runner::exec(THD*, TABLE*, SORT_INFO*))[0x5624ed3ac570]
sql/sql_window.cc:3058(Window_funcs_sort::exec(JOIN*, bool))[0x5624ed3ac7be]
sql/sql_window.cc:3185(Window_funcs_computation::exec(JOIN*, bool))[0x5624ed3ad5c6]
sql/sql_select.cc:29697(AGGR_OP::end_send())[0x5624ecf7483a]
sql/sql_select.cc:20621(sub_select_postjoin_aggr(JOIN*, st_join_table*, bool))[0x5624ecf30e5f]
sql/sql_select.cc:20867(sub_select(JOIN*, st_join_table*, bool))[0x5624ecf3195a]
sql/sql_select.cc:20445(do_select(JOIN*, Procedure*))[0x5624ecf3005a]
sql/sql_select.cc:4625(JOIN::exec_inner())[0x5624ecebda9c]
sql/sql_select.cc:4408(JOIN::exec())[0x5624ecebb0cc]
sql/sql_select.cc:4848(mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x5624ecebf2a8]
sql/sql_derived.cc:1265(mysql_derived_fill(THD*, LEX*, TABLE_LIST*))[0x5624ecd130a5]
sql/sql_derived.cc:200(mysql_handle_single_derived(LEX*, TABLE_LIST*, unsigned int))[0x5624ecd0bb1a]
sql/sql_select.cc:13885(st_join_table::preread_init())[0x5624ecf00c87]
sql/sql_select.cc:20884(sub_select(JOIN*, st_join_table*, bool))[0x5624ecf31b23]
sql/sql_select.cc:20443(do_select(JOIN*, Procedure*))[0x5624ecf2ff54]
sql/sql_select.cc:4625(JOIN::exec_inner())[0x5624ecebda9c]
sql/sql_select.cc:4408(JOIN::exec())[0x5624ecebb0cc]
sql/sql_select.cc:4848(mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x5624ecebf2a8]
sql/sql_select.cc:442(handle_select(THD*, LEX*, select_result*, unsigned long))[0x5624ece8fb1e]
sql/sql_parse.cc:6475(execute_sqlcom_select(THD*, TABLE_LIST*))[0x5624ecdfb886]
sql/sql_parse.cc:3978(mysql_execute_command(THD*))[0x5624ecde8ffd]
sql/sql_parse.cc:8013(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x5624ece04dc5]
sql/sql_parse.cc:1860(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x5624ecddb187]
sql/sql_parse.cc:1378(do_command(THD*))[0x5624ecdd7cb2]
sql/sql_connect.cc:1420(do_handle_one_connection(CONNECT*))[0x5624ed1e75b5]
sql/sql_connect.cc:1325(handle_one_connection)[0x5624ed1e6e59]
perfschema/pfs.cc:1871(pfs_spawn_thread)[0x5624ede8347e]
nptl/pthread_create.c:478(start_thread)[0x7f5310fbf609]
Query (0x62b0000a1290): SELECT t1 . c25 AS c16 FROM ( SELECT NOT COUNT( * ) OVER ( PARTITION BY t0 . c33 , AVG ( c33 ) OVER ( PARTITION BY -119 , 125 , -66 , 27 ) IN ( SELECT -100 AS c57 FROM t0 ) , t0 . c33 , t0 . c19 ) - ~ EXP ( t0 . c19 ) + CONVERT ( c33 , UNSIGNED ) % RAND ( ) AS c25 FROM t0 GROUP BY c33 , c19 ) AS t1 JOIN t0 ON t0 . c19 = t0 . c19
11.2/src/sql/item.cc:3337: virtual double Item_field::val_real(): Assertion `fixed()' failed.