summaryrefslogtreecommitdiff
path: root/mysql-test/suite/maria/t
diff options
context:
space:
mode:
authorMichael Widenius <monty@askmonty.org>2010-12-21 19:22:20 +0200
committerMichael Widenius <monty@askmonty.org>2010-12-21 19:22:20 +0200
commit865685dc0c0d7dec7415b82bf93ad63ca26cbacc (patch)
treed7725926405794542321f26aa0cbc3d5e1815ca1 /mysql-test/suite/maria/t
parent0b20943e9d7e22332ccc14b30b49a78a780cc23d (diff)
downloadmariadb-git-865685dc0c0d7dec7415b82bf93ad63ca26cbacc.tar.gz
Fixed bug in Aria that caused REPAIR to find old deleted rows.
BUILD/compile-pentium64: Added --with-zlib-dir=bundled when doing static build. mysql-test/suite/maria/r/maria.result: Added test case mysql-test/suite/maria/t/maria.test: Added test case storage/maria/ma_blockrec.c: We need to flush blob pages to disk to ensure they overwrite any reused head/tail pages. If not, REPAIR will find rows that was previously deleted.
Diffstat (limited to 'mysql-test/suite/maria/t')
-rw-r--r--mysql-test/suite/maria/t/maria.test18
1 files changed, 18 insertions, 0 deletions
diff --git a/mysql-test/suite/maria/t/maria.test b/mysql-test/suite/maria/t/maria.test
index 4dde6364bb1..fe2bd43988e 100644
--- a/mysql-test/suite/maria/t/maria.test
+++ b/mysql-test/suite/maria/t/maria.test
@@ -1911,6 +1911,24 @@ DELETE FROM t1;
drop table t1;
#
+# Test of problem where REPAIR finds old deleted rows.
+#
+
+create table t1 (a int not null primary key, b blob) engine=maria transactional=1;
+insert into t1 values(1,repeat('a',8000));
+insert into t1 values(2,repeat('b',8000));
+insert into t1 values(3,repeat('c',8000));
+flush tables;
+delete from t1 where a>1;
+--error 1062
+insert into t1 values(1,repeat('d',8000*3));
+flush tables;
+check table t1;
+# This failed by finding 2 extra rows.
+repair table t1 extended;
+drop table t1;
+
+#
# End of test
#
# Set defaults back