mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
MDEV-19491 update query stopped working after mariadb upgrade 10.2.23 -> 10.2.24
as well as
MDEV-19500 Update with join stopped worked if there is a call to a procedure in a trigger
MDEV-19521 Update Table Fails with Trigger and Stored Function
MDEV-19497 Replication stops because table not found
MDEV-19527 UPDATE + JOIN + TRIGGERS = table doesn't exists error
Reimplement the fix for (5d510fdbf0
)
MDEV-18507 can't update temporary table when joined with table with triggers on read-only
instead of calling open_tables() twice, put multi-update
prepare code inside open_tables() loop.
Add a test for a MDL backoff-and-retry loop inside open_tables()
across multi-update prepare code.
This commit is contained in:
@ -67,6 +67,20 @@ SELECT * FROM t2;
|
||||
col_int_key pk_1 pk_2 col_int
|
||||
1 2 3 4
|
||||
DROP TABLE t1,t2;
|
||||
create table t1 (id serial, size int(11)) engine=innodb;
|
||||
create table t2 (id serial, size int, account_id int) engine=innodb;
|
||||
create table t3 (id serial, size int, article_id int) engine=innodb;
|
||||
create table t4 (id serial, file_id int, article_id int) engine=innodb;
|
||||
insert t1 values(null, 400);
|
||||
insert t2 values(null, 0, 1), (null, 1, 1);
|
||||
insert t3 values(null, 100, 1);
|
||||
insert t4 values(null, 1, 2);
|
||||
create trigger file_update_article before update on t3 for each row
|
||||
update t2 set t2.size = new.size where t2.id = new.article_id;
|
||||
create trigger article_update_account before update on t2 for each row
|
||||
update t1 set t1.size = t1.size + new.size where t1.id = new.account_id;
|
||||
update t3 join t4 on t4.file_id =t3.id and t4.article_id=2 set t3.size=t3.size + 2;
|
||||
drop table t1, t2, t3, t4;
|
||||
#
|
||||
# end of 5.5 tests
|
||||
#
|
||||
|
Reference in New Issue
Block a user