summaryrefslogtreecommitdiff
path: root/mysql-test/t/mix_innodb_myisam_binlog.test
diff options
context:
space:
mode:
authorunknown <monty@mysql.com>2004-11-12 11:17:53 +0200
committerunknown <monty@mysql.com>2004-11-12 11:17:53 +0200
commit44070705ea958c57faa486e7f22ca5fb1ada095c (patch)
tree59f4a8722fd9657366da60b4af149031105872ab /mysql-test/t/mix_innodb_myisam_binlog.test
parent6a1bc4a52a8446775dbb428c2701d903b7902ad3 (diff)
parentb19eb67f08d04de3af744097e72023d550329035 (diff)
downloadmariadb-git-44070705ea958c57faa486e7f22ca5fb1ada095c.tar.gz
merge with 4.0
BitKeeper/etc/logging_ok: auto-union BitKeeper/deleted/.del-Makefile.am: Delete: Docs/Images/Makefile.am Build-tools/Bootstrap: Auto merged Docs/Makefile.am: Auto merged configure.in: Auto merged include/mysql.h: Auto merged innobase/dict/dict0dict.c: Auto merged libmysql/libmysql.c: Auto merged mysys/default.c: Auto merged scripts/mysqld_safe.sh: Auto merged sql/log.cc: Auto merged mysql-test/t/mix_innodb_myisam_binlog.test: Auto merged sql/mysqld.cc: Auto merged sql/sql_acl.cc: Auto merged sql/sql_table.cc: Auto merged client/mysqldump.c: merge with 4.0 (This only reorders options) sql/ha_innodb.cc: merge with 4.0 (Keep original code) sql/time.cc: Note that part of this patch is done in my_time.c
Diffstat (limited to 'mysql-test/t/mix_innodb_myisam_binlog.test')
-rw-r--r--mysql-test/t/mix_innodb_myisam_binlog.test32
1 files changed, 32 insertions, 0 deletions
diff --git a/mysql-test/t/mix_innodb_myisam_binlog.test b/mysql-test/t/mix_innodb_myisam_binlog.test
index 9c576b080ca..89a7f8f3036 100644
--- a/mysql-test/t/mix_innodb_myisam_binlog.test
+++ b/mysql-test/t/mix_innodb_myisam_binlog.test
@@ -172,4 +172,36 @@ select a from t1 order by a; # check that savepoints work :)
show binlog events from 79;
+# Test for BUG#5714, where a MyISAM update in the transaction used to
+# release row-level locks in InnoDB
+
+connect (con3,localhost,root,,);
+
+connection con3;
+delete from t1;
+delete from t2;
+--disable_warnings
+alter table t2 type=MyISAM;
+--enable_warnings
+insert into t1 values (1);
+begin;
+select * from t1 for update;
+
+connection con2;
+select (@before:=unix_timestamp())*0; # always give repeatable output
+begin;
+send select * from t1 for update;
+
+connection con3;
+insert into t2 values (20);
+
+connection con2;
+--error 1205
+reap;
+select (@after:=unix_timestamp())*0; # always give repeatable output
+# verify that innodb_lock_wait_timeout was exceeded. When there was
+# the bug, the reap would return immediately after the insert into t2.
+select (@after-@before) >= 2;
+
+# cleanup
drop table t1,t2;