mirror of
https://github.com/MariaDB/server.git
synced 2026-01-06 05:22:24 +03:00
Fix for bug #13399 Crash when executing PS/SP which should activate trigger
which is now dropped" and bug #12329 "Bogus error msg when executing PS with stored procedure after SP was re-created". mysql-test/r/sp-error.result: Added test for bug #12329 "Bogus error msg when executing PS with stored procedure after SP was re-created". mysql-test/r/trigger.result: Added test for bug #13399 Crash when executing PS/SP which should activate trigger which is now dropped". mysql-test/t/sp-error.test: Added test for bug #12329 "Bogus error msg when executing PS with stored procedure after SP was re-created". mysql-test/t/trigger.test: Added test for bug #13399 Crash when executing PS/SP which should activate trigger which is now dropped". sql/sp_head.cc: sp_head::add_used_tables_to_table_list(): We have to copy database/table names and alias to PS/SP memory since current instance of sp_head object can pass away before next execution of PS/SP for which tables are added to prelocking list. This will be fixed by introducing of proper invalidation mechanism once new TDC is ready.
This commit is contained in:
@@ -975,6 +975,24 @@ return 1;
|
||||
END |
|
||||
drop table t1|
|
||||
drop function bug_13627_f|
|
||||
drop function if exists bug12329;
|
||||
create table t1 as select 1 a;
|
||||
create table t2 as select 1 a;
|
||||
create function bug12329() returns int return (select a from t1);
|
||||
prepare stmt1 from 'select bug12329()';
|
||||
execute stmt1;
|
||||
bug12329()
|
||||
1
|
||||
drop function bug12329;
|
||||
create function bug12329() returns int return (select a+100 from t2);
|
||||
select bug12329();
|
||||
bug12329()
|
||||
101
|
||||
execute stmt1;
|
||||
ERROR HY000: Table 't2' was not locked with LOCK TABLES
|
||||
deallocate prepare stmt1;
|
||||
drop function bug12329;
|
||||
drop table t1, t2;
|
||||
create database mysqltest1;
|
||||
use mysqltest1;
|
||||
drop database mysqltest1;
|
||||
|
||||
Reference in New Issue
Block a user