diff options
author | unknown <istruewing@chilla.local> | 2006-09-12 11:40:24 +0200 |
---|---|---|
committer | unknown <istruewing@chilla.local> | 2006-09-12 11:40:24 +0200 |
commit | 562763f160d70abb0261aa167074e87f3652fd25 (patch) | |
tree | 72aa5855a88796e5bf39321582430a99f9634cec /mysql-test/t/myisam.test | |
parent | 662890878b182eb5eca56e4bdc21e34551b28703 (diff) | |
parent | 203d09996226e1b44f156f395df00bfc984cfe50 (diff) | |
download | mariadb-git-562763f160d70abb0261aa167074e87f3652fd25.tar.gz |
Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into chilla.local:/home/mydev/mysql-4.1-bug14400
mysql-test/r/myisam.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
myisam/mi_rkey.c:
Bug#14400 - Query joins wrong rows from table which is subject of
"concurrent insert"
Manual merge
Diffstat (limited to 'mysql-test/t/myisam.test')
-rw-r--r-- | mysql-test/t/myisam.test | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/mysql-test/t/myisam.test b/mysql-test/t/myisam.test index be7bec117f3..5cd825ef33b 100644 --- a/mysql-test/t/myisam.test +++ b/mysql-test/t/myisam.test @@ -486,6 +486,42 @@ select c1 from t1 order by c1 limit 1; drop table t1; # +# Bug #14400 Join could miss concurrently inserted row +# +# Partial key. +create table t1 (a int not null, primary key(a)); +create table t2 (a int not null, b int not null, primary key(a,b)); +insert into t1 values (1),(2),(3),(4),(5),(6); +insert into t2 values (1,1),(2,1); +lock tables t1 read local, t2 read local; +select straight_join * from t1,t2 force index (primary) where t1.a=t2.a; +connect (root,localhost,root,,test,$MASTER_MYPORT,master.sock); +insert into t2 values(2,0); +disconnect root; +connection default; +select straight_join * from t1,t2 force index (primary) where t1.a=t2.a; +drop table t1,t2; +# +# Full key. +CREATE TABLE t1 (c1 varchar(250) NOT NULL); +CREATE TABLE t2 (c1 varchar(250) NOT NULL, PRIMARY KEY (c1)); +INSERT INTO t1 VALUES ('test000001'), ('test000002'), ('test000003'); +INSERT INTO t2 VALUES ('test000002'), ('test000003'), ('test000004'); +LOCK TABLES t1 READ LOCAL, t2 READ LOCAL; +SELECT t1.c1 AS t1c1, t2.c1 AS t2c1 FROM t1, t2 + WHERE t1.c1 = t2.c1 HAVING t1c1 != t2c1; +connect (con1,localhost,root,,); +connection con1; +INSERT INTO t2 VALUES ('test000001'), ('test000005'); +disconnect con1; +connection default; +SELECT t1.c1 AS t1c1, t2.c1 AS t2c1 FROM t1, t2 + WHERE t1.c1 = t2.c1 HAVING t1c1 != t2c1; +DROP TABLE t1,t2; + +# End of 4.0 tests + +# # Test RTREE index # --error 1235, 1289 |