summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/innodb/r/innodb_bug42419.result
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/innodb/r/innodb_bug42419.result')
-rw-r--r--mysql-test/suite/innodb/r/innodb_bug42419.result24
1 files changed, 24 insertions, 0 deletions
diff --git a/mysql-test/suite/innodb/r/innodb_bug42419.result b/mysql-test/suite/innodb/r/innodb_bug42419.result
new file mode 100644
index 00000000..41c400bc
--- /dev/null
+++ b/mysql-test/suite/innodb/r/innodb_bug42419.result
@@ -0,0 +1,24 @@
+connection default;
+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;
+connect user2,localhost,root,,,$MASTER_MYPORT,$MASTER_MYSOCK;
+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;
+connection default;
+INSERT INTO t1_tmp (b) SELECT b FROM t1 WHERE a = 1;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+connection user2;
+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;
+connection default;
+disconnect user2;
+DROP TABLE t1;
+call mtr.add_suppression("Deadlock found when trying to get lock; try restarting transaction");