Commit ee1b06d5 authored by unknown's avatar unknown

Merge mysql.com:/windows/Linux_space/MySQL/mysql-4.1

into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0


mysql-test/r/ndb_lock.result:
  Auto merged
mysql-test/t/ndb_lock.test:
  Auto merged
ndb/include/ndbapi/NdbTransaction.hpp:
  Merge (using local)
sql/ha_ndbcluster.cc:
  Merge (using local)
sql/ha_ndbcluster.h:
  Merge (using local)
parents 492e7b08 cd49f996
...@@ -64,17 +64,26 @@ pk u o ...@@ -64,17 +64,26 @@ pk u o
insert into t1 values (1,1,1); insert into t1 values (1,1,1);
drop table t1; drop table t1;
create table t1 (x integer not null primary key, y varchar(32), z integer, key(z)) engine = ndb; create table t1 (x integer not null primary key, y varchar(32), z integer, key(z)) engine = ndb;
insert into t1 values (1,'one',1), (2,'two',2),(3,"three",3); insert into t1 values (1,'one',1);
begin; begin;
select * from t1 where x = 1 for update; select * from t1 where x = 1 for update;
x y z x y z
1 one 1 1 one 1
begin; begin;
select * from t1 where x = 2 for update; select * from t1 where x = 1 for update;
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
rollback;
rollback;
insert into t1 values (2,'two',2),(3,"three",3);
begin;
select * from t1 where x = 1 for update;
x y z x y z
2 two 2 1 one 1
select * from t1 where x = 1 for update; select * from t1 where x = 1 for update;
ERROR HY000: Lock wait timeout exceeded; try restarting transaction ERROR HY000: Lock wait timeout exceeded; try restarting transaction
select * from t1 where x = 2 for update;
x y z
2 two 2
rollback; rollback;
commit; commit;
begin; begin;
......
...@@ -73,7 +73,7 @@ drop table t1; ...@@ -73,7 +73,7 @@ drop table t1;
create table t1 (x integer not null primary key, y varchar(32), z integer, key(z)) engine = ndb; create table t1 (x integer not null primary key, y varchar(32), z integer, key(z)) engine = ndb;
insert into t1 values (1,'one',1), (2,'two',2),(3,"three",3); insert into t1 values (1,'one',1);
# PK access # PK access
connection con1; connection con1;
...@@ -82,11 +82,22 @@ select * from t1 where x = 1 for update; ...@@ -82,11 +82,22 @@ select * from t1 where x = 1 for update;
connection con2; connection con2;
begin; begin;
select * from t1 where x = 2 for update;
--error 1205 --error 1205
select * from t1 where x = 1 for update; select * from t1 where x = 1 for update;
rollback; rollback;
connection con1;
rollback;
insert into t1 values (2,'two',2),(3,"three",3);
begin;
select * from t1 where x = 1 for update;
connection con2;
--error 1205
select * from t1 where x = 1 for update;
select * from t1 where x = 2 for update;
rollback;
connection con1; connection con1;
commit; commit;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment