List:Commits« Previous MessageNext Message »
From:Timothy Smith Date:January 13 2009 10:14pm
Subject:bzr commit into mysql-5.1-bugteam branch (timothy.smith:2742) Bug#41671
View as plain text  
#At file:///data0/tsmith/bzr/bugteam/51/ based on revid:timothy.smith@stripped

 2742 Timothy Smith	2009-01-13
      Apply test case changes for Bug #41671 (innodb-semi-consistent.test) also to
      partition_innodb_semi_consistent.test, which was overlooked in the
      innodb-5.1-ss3603 snapshot.
modified:
  mysql-test/r/partition_innodb_semi_consistent.result
  mysql-test/t/partition_innodb_semi_consistent.test

=== modified file 'mysql-test/r/partition_innodb_semi_consistent.result'
--- a/mysql-test/r/partition_innodb_semi_consistent.result	2008-12-16 11:44:18 +0000
+++ b/mysql-test/r/partition_innodb_semi_consistent.result	2009-01-13 22:12:16 +0000
@@ -1,6 +1,6 @@
 drop table if exists t1;
 set binlog_format=mixed;
-set session transaction isolation level read committed;
+set session transaction isolation level repeatable read;
 create table t1(a int not null)
 engine=innodb
 DEFAULT CHARSET=latin1
@@ -13,11 +13,12 @@ select * from t1 where a=3 lock in share
 a
 3
 set binlog_format=mixed;
-set session transaction isolation level read committed;
+set session transaction isolation level repeatable read;
 set autocommit=0;
 update t1 set a=10 where a=5;
 ERROR HY000: Lock wait timeout exceeded; try restarting transaction
 commit;
+set session transaction isolation level read committed;
 update t1 set a=10 where a=5;
 select * from t1 where a=2 for update;
 ERROR HY000: Lock wait timeout exceeded; try restarting transaction

=== modified file 'mysql-test/t/partition_innodb_semi_consistent.test'
--- a/mysql-test/t/partition_innodb_semi_consistent.test	2008-12-16 11:44:18 +0000
+++ b/mysql-test/t/partition_innodb_semi_consistent.test	2009-01-13 22:12:16 +0000
@@ -14,7 +14,7 @@ connect (a,localhost,root,,);
 connect (b,localhost,root,,);
 connection a;
 set binlog_format=mixed;
-set session transaction isolation level read committed;
+set session transaction isolation level repeatable read;
 create table t1(a int not null)
 engine=innodb
 DEFAULT CHARSET=latin1
@@ -27,7 +27,7 @@ set autocommit=0;
 select * from t1 where a=3 lock in share mode;
 connection b;
 set binlog_format=mixed;
-set session transaction isolation level read committed;
+set session transaction isolation level repeatable read;
 set autocommit=0;
 -- error ER_LOCK_WAIT_TIMEOUT
 update t1 set a=10 where a=5;
@@ -35,6 +35,8 @@ connection a;
 #DELETE FROM t1 WHERE a=5;
 commit;
 connection b;
+# perform a semi-consisent read (and unlock non-matching rows)
+set session transaction isolation level read committed;
 update t1 set a=10 where a=5;
 connection a;
 -- error ER_LOCK_WAIT_TIMEOUT
@@ -42,6 +44,7 @@ select * from t1 where a=2 for update;
 # this should lock the records (1),(2)
 select * from t1 where a=2 limit 1 for update;
 connection b;
+# semi-consistent read will skip non-matching locked rows a=1, a=2
 update t1 set a=11 where a=6;
 -- error ER_LOCK_WAIT_TIMEOUT
 update t1 set a=12 where a=2;

Thread
bzr commit into mysql-5.1-bugteam branch (timothy.smith:2742) Bug#41671Timothy Smith13 Jan