mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
a67725ac75
Moved the test case for the bug into a separate file (and restored the original innodb_mysql test setup). Used the new wait_show_condition test macro to avoid the usage of sleep mysql-test/include/wait_show_condition.inc: Bug #42419: new test macro to wait for a row in SHOW to have a certain value. mysql-test/r/innodb_bug42419.result: Bug #42419: test case mysql-test/r/innodb_mysql.result: Bug #42419: revert to the original innodb_mysql test mysql-test/t/innodb_bug42419.test: Bug #42419: test case mysql-test/t/innodb_mysql-master.opt: Bug #42419: revert to the original innodb_mysql test mysql-test/t/innodb_mysql.test: Bug #42419: revert to the original innodb_mysql test
17 lines
858 B
Text
17 lines
858 B
Text
CREATE TABLE t1 (a INT AUTO_INCREMENT PRIMARY KEY, b INT) ENGINE = InnoDB;
|
|
INSERT INTO t1 VALUES (1,1),(2,2),(3,3);
|
|
COMMIT;
|
|
SET AUTOCOMMIT = 0;
|
|
CREATE TEMPORARY TABLE t1_tmp ( b INT );
|
|
INSERT INTO t1_tmp (b) SELECT b FROM t1 WHERE a = 3;
|
|
INSERT INTO t1_tmp (b) SELECT b FROM t1 WHERE a = 2;
|
|
SET AUTOCOMMIT = 0;
|
|
CREATE TEMPORARY TABLE t2_tmp ( a int, new_a int );
|
|
INSERT INTO t2_tmp VALUES (1,51),(2,52),(3,53);
|
|
UPDATE t1 SET a = (SELECT new_a FROM t2_tmp WHERE t2_tmp.a = t1.a) WHERE a = 1;
|
|
UPDATE t1 SET a = (SELECT new_a FROM t2_tmp WHERE t2_tmp.a = t1.a) WHERE a = 2;
|
|
INSERT INTO t1_tmp (b) SELECT b FROM t1 WHERE a = 1;
|
|
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
|
Reap the server message for connection user2 UPDATE t1 ...
|
|
UPDATE t1 SET a = (SELECT new_a FROM t2_tmp WHERE t2_tmp.a = t1.a) WHERE a = 3;
|
|
DROP TABLE t1;
|