summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/innodb/t/mdev-117.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/innodb/t/mdev-117.test')
-rw-r--r--mysql-test/suite/innodb/t/mdev-117.test34
1 files changed, 34 insertions, 0 deletions
diff --git a/mysql-test/suite/innodb/t/mdev-117.test b/mysql-test/suite/innodb/t/mdev-117.test
new file mode 100644
index 00000000..b29b2cd5
--- /dev/null
+++ b/mysql-test/suite/innodb/t/mdev-117.test
@@ -0,0 +1,34 @@
+#
+# verify that DELETE IGNORE does not ignore deadlocks
+#
+
+--source include/have_innodb.inc
+
+SET GLOBAL innodb_lock_wait_timeout=3;
+
+CREATE TABLE t1 (col_int_key INT, KEY (col_int_key)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (6);
+
+--connect (con1,localhost,root,,test)
+SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+SET AUTOCOMMIT=OFF;
+SELECT col_int_key FROM t1;
+
+--connection default
+--send DELETE IGNORE FROM t1;
+
+--connection con1
+--error 0,ER_LOCK_DEADLOCK,ER_LOCK_WAIT_TIMEOUT
+DELETE FROM t1 WHERE col_int_key IN (1, 40000000);
+
+--connection default
+--disable_warnings
+--error 0,ER_LOCK_DEADLOCK,ER_LOCK_WAIT_TIMEOUT
+--reap
+--enable_warnings
+
+--disconnect con1
+drop table t1;
+SET GLOBAL innodb_lock_wait_timeout=default;
+
+call mtr.add_suppression("Deadlock found when trying to get lock; try restarting transaction");