mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-21234 Server crashes in in setup_on_expr upon 3rd execution of SP
Versioned conditions in on_expr can not be rebuilt at optimization stage on non-conventional arena.
This commit is contained in:
@ -586,6 +586,30 @@ call p;
|
||||
i
|
||||
drop procedure p;
|
||||
drop table t1;
|
||||
#
|
||||
# MDEV-21234 Server crashes in in setup_on_expr upon 3rd execution of SP
|
||||
#
|
||||
create table t1 (a varchar(8));
|
||||
insert into t1 values ('foo'),('bar');
|
||||
create table t2 (b date);
|
||||
create procedure pr() insert into t2 select * from t1;
|
||||
call pr;
|
||||
ERROR 22007: Incorrect date value: 'foo' for column `test`.`t2`.`b` at row 1
|
||||
prepare stmt from 'insert into t2 select * from t1';
|
||||
execute stmt;
|
||||
ERROR 22007: Incorrect date value: 'foo' for column `test`.`t2`.`b` at row 1
|
||||
alter table t1 add system versioning;
|
||||
call pr;
|
||||
ERROR 22007: Incorrect date value: 'foo' for column `test`.`t2`.`b` at row 1
|
||||
call pr;
|
||||
ERROR 22007: Incorrect date value: 'foo' for column `test`.`t2`.`b` at row 1
|
||||
execute stmt;
|
||||
ERROR 22007: Incorrect date value: 'foo' for column `test`.`t2`.`b` at row 1
|
||||
execute stmt;
|
||||
ERROR 22007: Incorrect date value: 'foo' for column `test`.`t2`.`b` at row 1
|
||||
drop prepare stmt;
|
||||
drop procedure pr;
|
||||
drop table t1, t2;
|
||||
call verify_trt_dummy(34);
|
||||
No A B C D
|
||||
1 1 1 1 1
|
||||
|
@ -392,6 +392,35 @@ call p;
|
||||
drop procedure p;
|
||||
drop table t1;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-21234 Server crashes in in setup_on_expr upon 3rd execution of SP
|
||||
--echo #
|
||||
create table t1 (a varchar(8));
|
||||
insert into t1 values ('foo'),('bar');
|
||||
create table t2 (b date);
|
||||
|
||||
create procedure pr() insert into t2 select * from t1;
|
||||
--error ER_TRUNCATED_WRONG_VALUE
|
||||
call pr;
|
||||
prepare stmt from 'insert into t2 select * from t1';
|
||||
--error ER_TRUNCATED_WRONG_VALUE
|
||||
execute stmt;
|
||||
alter table t1 add system versioning;
|
||||
--error ER_TRUNCATED_WRONG_VALUE
|
||||
call pr;
|
||||
--error ER_TRUNCATED_WRONG_VALUE
|
||||
call pr;
|
||||
--error ER_TRUNCATED_WRONG_VALUE
|
||||
execute stmt;
|
||||
--error ER_TRUNCATED_WRONG_VALUE
|
||||
execute stmt;
|
||||
drop prepare stmt;
|
||||
|
||||
# cleanup
|
||||
drop procedure pr;
|
||||
drop table t1, t2;
|
||||
|
||||
|
||||
call verify_trt_dummy(34);
|
||||
|
||||
-- source suite/versioning/common_finish.inc
|
||||
|
Reference in New Issue
Block a user