MDEV-16615 ASAN SEGV in handler::print_error or server crash after error upon CREATE TABLE
table->in_use is not always set and a KILL signal can arrive anytime.
This commit is contained in:
parent
8ca18294d5
commit
45cabf1017
@ -181,3 +181,6 @@ ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|||||||
set max_statement_time = 0;
|
set max_statement_time = 0;
|
||||||
drop procedure pr;
|
drop procedure pr;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
SET max_statement_time= 1;
|
||||||
|
CREATE TABLE t ENGINE=InnoDB SELECT * FROM seq_1_to_50000;
|
||||||
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
--source include/have_innodb.inc
|
--source include/have_innodb.inc
|
||||||
|
--source include/have_sequence.inc
|
||||||
--source include/not_valgrind.inc
|
--source include/not_valgrind.inc
|
||||||
|
|
||||||
--echo
|
--echo
|
||||||
@ -226,3 +227,10 @@ call pr();
|
|||||||
set max_statement_time = 0;
|
set max_statement_time = 0;
|
||||||
drop procedure pr;
|
drop procedure pr;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# MDEV-16615 ASAN SEGV in handler::print_error or server crash after error upon CREATE TABLE
|
||||||
|
#
|
||||||
|
SET max_statement_time= 1;
|
||||||
|
--error ER_STATEMENT_TIMEOUT
|
||||||
|
CREATE TABLE t ENGINE=InnoDB SELECT * FROM seq_1_to_50000;
|
||||||
|
@ -3413,8 +3413,8 @@ void handler::print_error(int error, myf errflag)
|
|||||||
break;
|
break;
|
||||||
case HA_ERR_ABORTED_BY_USER:
|
case HA_ERR_ABORTED_BY_USER:
|
||||||
{
|
{
|
||||||
DBUG_ASSERT(table->in_use->killed);
|
DBUG_ASSERT(ha_thd()->killed);
|
||||||
table->in_use->send_kill_message();
|
ha_thd()->send_kill_message();
|
||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
}
|
}
|
||||||
case HA_ERR_WRONG_MRG_TABLE_DEF:
|
case HA_ERR_WRONG_MRG_TABLE_DEF:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user