summaryrefslogtreecommitdiff
path: root/mysql-test/t/innodb-timeout.test
diff options
context:
space:
mode:
authorunknown <knielsen@knielsen-hq.org>2009-06-09 15:19:13 +0200
committerunknown <knielsen@knielsen-hq.org>2009-06-09 15:19:13 +0200
commita03c9ff55f7de5d32cbc1905fd0652ad64602891 (patch)
tree9619530f222f381d541f1fc1cdc1346106087f52 /mysql-test/t/innodb-timeout.test
parent8be051d7031f8787920f48827e35535151486d98 (diff)
downloadmariadb-git-a03c9ff55f7de5d32cbc1905fd0652ad64602891.tar.gz
XtraDB after-merge fixes.
The original XtraDB (and InnoDB plugin) is shipped as a separate source tree which is copied into the MySQL source, after which a setup.sh script must be run to move things into place. Now that XtraDB is part of the MariaDB source tree, this commit fixes these things up once and for all: - New innodb build scripts. - Test suite fixes (new tests and patches to existing). - Remove files no longer needed due to this.
Diffstat (limited to 'mysql-test/t/innodb-timeout.test')
-rw-r--r--mysql-test/t/innodb-timeout.test64
1 files changed, 64 insertions, 0 deletions
diff --git a/mysql-test/t/innodb-timeout.test b/mysql-test/t/innodb-timeout.test
new file mode 100644
index 00000000000..f23fe3cff2d
--- /dev/null
+++ b/mysql-test/t/innodb-timeout.test
@@ -0,0 +1,64 @@
+-- source include/have_innodb.inc
+
+let $timeout=`select @@innodb_lock_wait_timeout`;
+set global innodb_lock_wait_timeout=42;
+
+connect (a,localhost,root,,);
+connect (b,localhost,root,,);
+
+connection a;
+select @@innodb_lock_wait_timeout;
+set innodb_lock_wait_timeout=1;
+select @@innodb_lock_wait_timeout;
+
+connection b;
+select @@innodb_lock_wait_timeout;
+set global innodb_lock_wait_timeout=347;
+select @@innodb_lock_wait_timeout;
+set innodb_lock_wait_timeout=1;
+select @@innodb_lock_wait_timeout;
+
+connect (c,localhost,root,,);
+connection c;
+select @@innodb_lock_wait_timeout;
+connection default;
+disconnect c;
+
+connection a;
+create table t1(a int primary key)engine=innodb;
+begin;
+insert into t1 values(1),(2),(3);
+
+connection b;
+--send
+select * from t1 for update;
+
+connection a;
+commit;
+
+connection b;
+reap;
+
+connection a;
+begin;
+insert into t1 values(4);
+
+connection b;
+--send
+select * from t1 for update;
+
+connection a;
+sleep 2;
+commit;
+
+connection b;
+--error ER_LOCK_WAIT_TIMEOUT
+reap;
+drop table t1;
+
+connection default;
+
+disconnect a;
+disconnect b;
+
+eval set global innodb_lock_wait_timeout=$timeout;