summaryrefslogtreecommitdiff
path: root/mysql-test/t/merge.test
diff options
context:
space:
mode:
authorunknown <ingo@mysql.com>2005-09-23 17:27:07 +0200
committerunknown <ingo@mysql.com>2005-09-23 17:27:07 +0200
commit944db06bbb328288d5e9cfc85de86876895b8b62 (patch)
tree48baa8a8836b9aa39f3616c84580cec8a057ba32 /mysql-test/t/merge.test
parent79b79064fafc92b5b5fcb5402ad7b2bace2cdb77 (diff)
parent9c0d809270a1d74ec33711d94cd65930eab11579 (diff)
downloadmariadb-git-944db06bbb328288d5e9cfc85de86876895b8b62.tar.gz
Merge mysql.com:/home/mydev/mysql-4.1-4100
into mysql.com:/home/mydev/mysql-5.0-5000 myisam/mi_dbug.c: Auto merged myisam/mi_rkey.c: Auto merged myisam/mi_search.c: Auto merged myisam/myisamdef.h: Auto merged mysql-test/r/merge.result: Auto merged mysql-test/t/merge.test: Auto merged
Diffstat (limited to 'mysql-test/t/merge.test')
-rw-r--r--mysql-test/t/merge.test36
1 files changed, 36 insertions, 0 deletions
diff --git a/mysql-test/t/merge.test b/mysql-test/t/merge.test
index 7d708243a10..7cb8a089188 100644
--- a/mysql-test/t/merge.test
+++ b/mysql-test/t/merge.test
@@ -288,6 +288,42 @@ create table t3 engine=merge union=(t1, t2) select * from t2;
create table t3 engine=merge union=(t1, t2) select (select max(a) from t2);
drop table t1, t2;
+#
+# Bug#9112 - Merge table with composite index producing invalid results with some queries
+# This test case will fail only without the bugfix and some
+# non-deterministic circumstances. It depends on properly initialized
+# "un-initialized" memory. At the time it happens with a standard
+# non-debug build. But there is no guarantee that this will be always so.
+#
+create table t1 (
+ a double(16,6),
+ b varchar(10),
+ index (a,b)
+) engine=merge union=(t2,t3);
+
+create table t2 (
+ a double(16,6),
+ b varchar(10),
+ index (a,b)
+) engine=myisam;
+
+create table t3 (
+ a double(16,6),
+ b varchar(10),
+ index (a,b)
+) engine=myisam;
+
+insert into t2 values ( null, '');
+# We may have insufficient accuracy for 16 digits of '9'.
+# Suppress a "truncate" warning due to accuracy problems.
+--disable_warnings
+insert into t2 values ( 9999999999.999999, '');
+--enable_warnings
+insert into t3 select * from t2;
+select min(a), max(a) from t1;
+flush tables;
+select min(a), max(a) from t1;
+drop table t1, t2, t3;
# BUG#6699 : no sorting on 'ref' retrieval
create table t1 (a int,b int,c int, index (a,b,c));
create table t2 (a int,b int,c int, index (a,b,c));