|
test case from MDEV-32624 - reproducible after 10.5 e87440b (MDEV-26301)
Crash is repeatable on 10.5-10.11, but not on 11.0+
--source include/have_innodb.inc
|
|
CREATE TABLE `table1` (
|
`id_product`int(11),
|
`id_stock`varchar(32),
|
`quantity` mediumint(9),
|
PRIMARY KEY (`id_product`,`id_stock`)
|
) engine=innodb;
|
|
CREATE TABLE `table2` (
|
`id_product`int(10) unsigned,
|
`id_shop`int(10) unsigned,
|
PRIMARY KEY (`id_product`,`id_shop`)
|
) engine=innodb;
|
|
|
SELECT backups.id_product, quantity_backup, quantity_bl
|
FROM (
|
SELECT id_product, SUM(quantity) as quantity_backup
|
FROM`table1`
|
) backups
|
INNER JOIN (
|
SELECT id_product
|
FROM`table1`
|
GROUP BY id_product
|
) normals ON (normals.id_product = backups.id_product)
|
LEFT JOIN (
|
SELECT quantity as quantity_bl, id_product FROM table1
|
) bl ON (backups.id_product = bl.id_product )
|
WHERE
|
backups.id_product IN (
|
SELECT id_product
|
FROM table2
|
);
|
Version: '10.5.20-MariaDB-debug-log'
|
231030 15:51:48 [ERROR] mysqld got signal 11 ;
|
|
Server version: 10.5.20-MariaDB-debug-log source revision: e87440b79ec6f3e3ed2e6639a3239a4d02630b7e
|
|
sql/signal_handler.cc:241(handle_fatal_signal)[0x55a1094053ea]
|
sigaction.c:0(__restore_rt)[0x7feeb8d12420]
|
sql/opt_split.cc:1047(st_join_table::choose_best_splitting(unsigned int, unsigned long long, unsigned long long*))[0x55a10924134d]
|
sql/sql_select.cc:7555(best_access_path(JOIN*, st_join_table*, unsigned long long, POSITION const*, unsigned int, bool, double, POSITION*, POSITION*))[0x55a108cca97c]
|
sql/sql_select.cc:9869(best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned int))[0x55a108cd798c]
|
sql/sql_select.cc:9958(best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned int))[0x55a108cd867f]
|
sql/sql_select.cc:9958(best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned int))[0x55a108cd867f]
|
sql/sql_select.cc:9037(greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int, unsigned int))[0x55a108cd36f7]
|
sql/sql_select.cc:8599(choose_plan(JOIN*, unsigned long long))[0x55a108cd13c3]
|
sql/sql_select.cc:5738(make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*))[0x55a108cbc0e7]
|
sql/sql_select.cc:2342(JOIN::optimize_inner())[0x55a108c98b66]
|
sql/sql_select.cc:1700(JOIN::optimize())[0x55a108c9203f]
|
sql/sql_select.cc:4830(mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x55a108cb2ea6]
|
sql/sql_select.cc:450(handle_select(THD*, LEX*, select_result*, unsigned long))[0x55a108c83d35]
|
sql/sql_parse.cc:6331(execute_sqlcom_select(THD*, TABLE_LIST*))[0x55a108be98c9]
|
sql/sql_parse.cc:4008(mysql_execute_command(THD*))[0x55a108bd863c]
|
sql/sql_parse.cc:8106(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x55a108bf4bc3]
|
sql/sql_parse.cc:1894(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x55a108bca819]
|
sql/sql_parse.cc:1375(do_command(THD*))[0x55a108bc718b]
|
sql/sql_connect.cc:1416(do_handle_one_connection(CONNECT*, bool))[0x55a109023ea7]
|
sql/sql_connect.cc:1320(handle_one_connection)[0x55a10902380b]
|
perfschema/pfs.cc:2203(pfs_spawn_thread)[0x55a109cad45a]
|
nptl/pthread_create.c:478(start_thread)[0x7feeb8d06609]
|
|
Query (0x62b0000852a8): SELECT backups.id_product, quantity_backup, quantity_bl
|
FROM (
|
SELECT id_product, SUM(quantity) as quantity_backup
|
FROM`table1`
|
) backups
|
INNER JOIN (
|
SELECT id_product
|
FROM`table1`
|
GROUP BY id_product
|
) normals ON (normals.id_product = backups.id_product)
|
LEFT JOIN (
|
SELECT quantity as quantity_bl, id_product FROM table1
|
) bl ON (backups.id_product = bl.id_product )
|
WHERE
|
backups.id_product IN (
|
SELECT id_product
|
FROM table2
|
)
|
|
|
Test case from MDEV-32602 , crashes on 10.5-11.2, after e87440b commit
CREATE TABLE t1 ( id int NOT NULL, PRIMARY KEY (id));
|
|
INSERT INTO t1 VALUES
|
(-65632),(-65622),(-65570),(-65560),(-65553),(-65543),(-65504),(-65494),(-65491),(-65481),(-65442),(-65432),(-65425),(-65415),(-65363),(-65353),(-32864),(-32854),(-32802),(-32792),(-32785),(-32775),(-32736),(-32726),(-32723),(-32713),(-32674),(-32664),(-32657),(-32647),(-32595),(-32585),(-96),(-86),(-34),(-24),(-17),(-7),(32),(42),(45),(55),(94),(104),(111),(121),(173),(183),(2191719),(2191729),(2191781),(2191791),(2191798),(2191808),(2191847),(2191857),(2191860),(2191870),(2191909),(2191919),(2191926),(2191936),(2191988),(2191998),(2224487),(2224497),(2224549),(2224559),(2224566),(2224576),(2224615),(2224625),(2224628),(2224638),(2224677),(2224687),(2224694),(2224704),(2224756),(2224766),(2257255),(2257265),(2257317),(2257327),(2257334),(2257344),(2257383),(2257393),(2257396),(2257406),(2257445),(2257455),(2257462),(2257472),(2257524),(2257534);
|
|
|
INSERT INTO t1 SELECT id
|
FROM t1
|
NATURAL JOIN ( SELECT * FROM t1 WHERE id < 70 GROUP BY id )dt
|
WHERE id IN ( SELECT id LIKE 'x' FROM t1 ) ;
|
|
DROP TABLE t1;
|
Version: '10.5.23-MariaDB-debug-log'
|
231028 13:29:08 [ERROR] mysqld got signal 11 ;
|
|
Server version: 10.5.23-MariaDB-debug-log source revision: b5e43a1d3539c7254c298dc9f63a261281345d59
|
|
sql/signal_handler.cc:241(handle_fatal_signal)[0x5615c8385d90]
|
sigaction.c:0(__restore_rt)[0x7fc23cb66420]
|
sql/opt_split.cc:1049(st_join_table::choose_best_splitting(unsigned int, unsigned long long, POSITION const*, unsigned long long*))[0x5615c81c7a1e]
|
sql/sql_select.cc:7570(best_access_path(JOIN*, st_join_table*, unsigned long long, POSITION const*, unsigned int, bool, double, POSITION*, POSITION*))[0x5615c7c4ccce]
|
sql/sql_select.cc:9886(best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned int))[0x5615c7c59d6a]
|
sql/sql_select.cc:9975(best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned int))[0x5615c7c5aa5d]
|
sql/sql_select.cc:9975(best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned int))[0x5615c7c5aa5d]
|
sql/sql_select.cc:9054(greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int, unsigned int))[0x5615c7c55ad5]
|
sql/sql_select.cc:8616(choose_plan(JOIN*, unsigned long long))[0x5615c7c537a1]
|
sql/sql_select.cc:5753(make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*))[0x5615c7c3e42f]
|
sql/sql_select.cc:2363(JOIN::optimize_inner())[0x5615c7c1b02c]
|
sql/sql_select.cc:1721(JOIN::optimize())[0x5615c7c14505]
|
sql/sql_select.cc:4845(mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x5615c7c351cc]
|
sql/sql_select.cc:450(handle_select(THD*, LEX*, select_result*, unsigned long))[0x5615c7c06073]
|
sql/sql_parse.cc:4790(mysql_execute_command(THD*))[0x5615c7b5f885]
|
sql/sql_parse.cc:8120(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x5615c7b76977]
|
sql/sql_parse.cc:1894(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x5615c7b4c3a5]
|
sql/sql_parse.cc:1375(do_command(THD*))[0x5615c7b48d0d]
|
sql/sql_connect.cc:1416(do_handle_one_connection(CONNECT*, bool))[0x5615c7fa795b]
|
sql/sql_connect.cc:1320(handle_one_connection)[0x5615c7fa72bf]
|
perfschema/pfs.cc:2203(pfs_spawn_thread)[0x5615c8c33aba]
|
nptl/pthread_create.c:478(start_thread)[0x7fc23cb5a609]
|
|
Query (0x62b0000852a8): INSERT INTO t1 SELECT id
|
FROM t1
|
NATURAL JOIN ( SELECT * FROM t1 WHERE id < 70 GROUP BY id )dt
|
WHERE id IN ( SELECT id LIKE 'x' FROM t1 )
|
|