From 358327618d5a71138be6ca27a4c8472723b67c45 Mon Sep 17 00:00:00 2001 From: Michael Widenius Date: Wed, 28 Oct 2009 09:52:34 +0200 Subject: Speed up of test suite: - Added --disable_query_log ; begin ; .... commit; --enable_query_log around all while loops that does insert --- mysql-test/t/archive.test | 2 ++ 1 file changed, 2 insertions(+) (limited to 'mysql-test/t/archive.test') diff --git a/mysql-test/t/archive.test b/mysql-test/t/archive.test index 7139d95ab49..5864e539b08 100644 --- a/mysql-test/t/archive.test +++ b/mysql-test/t/archive.test @@ -1576,11 +1576,13 @@ CREATE TABLE t1(a VARCHAR(510)) ENGINE = ARCHIVE; let $bug31036=41; --disable_query_log +begin; while($bug31036) { INSERT INTO t1(a) VALUES (REPEAT('a', 510)); dec $bug31036; } +commit; --enable_query_log INSERT INTO t1(a) VALUES (''); -- cgit v1.2.1 From 9f85560212241f07b7bdff7df639c0b9a519bed5 Mon Sep 17 00:00:00 2001 From: Michael Widenius Date: Fri, 3 Sep 2010 20:55:56 +0300 Subject: Enable archive tables to work with mysql_upgrade / repair Made long file names from previous patch shorter mysql-test/r/archive.result: Added testing of repair (for upgrade) of 5.0 tables. mysql-test/std_data/archive_5_0.ARM: Archive table created in MySQL 5.0 mysql-test/std_data/archive_5_0.ARZ: Archive table created in MySQL 5.0 mysql-test/std_data/archive_5_0.frm: Archive table created in MySQL 5.0 mysql-test/std_data/long_table_name.MYD: Made long file names shorter mysql-test/std_data/long_table_name.MYI: Made long file names shorter mysql-test/std_data/long_table_name.frm: Made long file names shorter mysql-test/t/archive.test: Added testing of repair (for upgrade) of 5.0 tables. sql/sql_table.cc: Allow recreate to open crashed tables. sql/table.cc: Fix error message if storage engine doesn't exists. storage/archive/azio.c: Reset status values in case archive is of old versions storage/archive/ha_archive.cc: Fix to allow one to open old versions of table during repair Reset status variables for old version tables If the the table is of old version, force upgrade with ALTER TABLE when doing repair storage/archive/ha_archive.h: Added variables to detect old versions --- mysql-test/t/archive.test | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'mysql-test/t/archive.test') diff --git a/mysql-test/t/archive.test b/mysql-test/t/archive.test index 6704257f9af..7478c7dcdce 100644 --- a/mysql-test/t/archive.test +++ b/mysql-test/t/archive.test @@ -1680,3 +1680,16 @@ SELECT * FROM t1; REPAIR TABLE t1 EXTENDED; SELECT * FROM t1; DROP TABLE t1; + +# +# Bug #47012 archive tables are not upgradeable, and server crashes on +# any access +# +copy_file std_data/archive_5_0.frm $MYSQLD_DATADIR/test/t1.frm; +copy_file std_data/archive_5_0.ARZ $MYSQLD_DATADIR/test/t1.ARZ; +copy_file std_data/archive_5_0.ARM $MYSQLD_DATADIR/test/t1.ARM; +--error ER_TABLE_NEEDS_UPGRADE +select * from t1; +repair table t1; +select sum(length(a)),sum(b) from t1; +drop table t1; -- cgit v1.2.1