diff options
author | Guilhem Bichot <guilhem@mysql.com> | 2008-06-11 22:45:14 +0200 |
---|---|---|
committer | Guilhem Bichot <guilhem@mysql.com> | 2008-06-11 22:45:14 +0200 |
commit | bd74d06fcbeb2dff91555bf694330e38ea4fb93e (patch) | |
tree | cb45591afa057cc2cb16e96f7e1b4ab448df740f /mysql-test | |
parent | 08b58a8811aceb280b4026cd30871f4c9fb4f15b (diff) | |
download | mariadb-git-bd74d06fcbeb2dff91555bf694330e38ea4fb93e.tar.gz |
Fix for BUG#37005 "Maria: ALTER TABLE TRANSACTIONAL=0 leaves table transactional inside Maria"
mysql-test/r/maria-page-checksum.result:
result for new test portion. Without the code fix, you would see a wrong "yes" or "no" in the "Crashsafe" line
for iterations 2,9,14.
mysql-test/t/maria-page-checksum.test:
Adding test for BUG#37005 "Maria: ALTER TABLE TRANSACTIONAL=0 leaves table transactional inside Maria"
sql/sql_table.cc:
In ALTER TABLE, we already rebuilt the table entirely if the DEFAULT CHARSET, ROW_FORMAT or PAGE_CHECKSUM
clauses were used; we have to do the same if the TRANSACTIONAL clause is used, because it affects
the table inside the engine (for example, Maria makes shorter rows in non-transactional tables).
Not doing so led to the BUG#37005, where ALTER TABLE TRANSACTIONAL=0 sometimes left the table
transactional into Maria though not in the frm.
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/r/maria-page-checksum.result | 288 | ||||
-rw-r--r-- | mysql-test/t/maria-page-checksum.test | 509 |
2 files changed, 793 insertions, 4 deletions
diff --git a/mysql-test/r/maria-page-checksum.result b/mysql-test/r/maria-page-checksum.result index d7ab1fc4ba3..0319bd9e9ca 100644 --- a/mysql-test/r/maria-page-checksum.result +++ b/mysql-test/r/maria-page-checksum.result @@ -650,3 +650,291 @@ t1 CREATE TABLE `t1` ( ) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; +# iteration 1 +create table t1(a int) engine=maria ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +Crashsafe: yes +alter table t1 modify a bigint ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` bigint(20) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +Crashsafe: yes +drop table t1; +# iteration 2 +create table t1(a int) engine=maria ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +Crashsafe: yes +alter table t1 transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +drop table t1; +# iteration 3 +create table t1(a int) engine=maria ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +Crashsafe: yes +alter table t1 transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +drop table t1; +# iteration 4 +create table t1(a int) engine=maria ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +Crashsafe: yes +alter table t1 engine=maria ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +Crashsafe: yes +drop table t1; +# iteration 5 +create table t1(a int) engine=maria ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +Crashsafe: yes +alter table t1 engine=maria transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +drop table t1; +# iteration 6 +create table t1(a int) engine=maria ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +Crashsafe: yes +alter table t1 engine=maria transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +drop table t1; +# iteration 7 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +alter table t1 modify a bigint ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` bigint(20) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +drop table t1; +# iteration 8 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +alter table t1 transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +drop table t1; +# iteration 9 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +alter table t1 transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +drop table t1; +# iteration 10 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +alter table t1 engine=maria ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +drop table t1; +# iteration 11 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +alter table t1 engine=maria transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +drop table t1; +# iteration 12 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +alter table t1 engine=maria transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +drop table t1; +# iteration 13 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +alter table t1 modify a bigint ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` bigint(20) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +drop table t1; +# iteration 14 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +alter table t1 transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +drop table t1; +# iteration 15 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +alter table t1 transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +drop table t1; +# iteration 16 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +alter table t1 engine=maria ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +drop table t1; +# iteration 17 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +alter table t1 engine=maria transactional=0 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +Crashsafe: no +drop table t1; +# iteration 18 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +alter table t1 engine=maria transactional=1 ; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +Crashsafe: yes +drop table t1; diff --git a/mysql-test/t/maria-page-checksum.test b/mysql-test/t/maria-page-checksum.test index 6c7c5afc2a5..e0a0a1517b1 100644 --- a/mysql-test/t/maria-page-checksum.test +++ b/mysql-test/t/maria-page-checksum.test @@ -1,7 +1,5 @@ -# -# This can't be run with --extern as we are acccessing the tables in the -# database directly -# +# Tests for two bugs related to ALTER TABLE and maria-specific alter +# options (PAGE_CHECKSUM and TRANSACTIONAL). -- source include/have_maria.inc @@ -9,8 +7,16 @@ drop table if exists t1; --enable_warnings +# +# Test for BUG#35441 "Cannot change PAGE_CHECKSUM table option" +# + select @@global.maria_page_checksum; +# we scan through combinations in the cartesian product of +# (first value of maria_page_checksum) x (clauses in CREATE TABLE) x +# (second value of maria_page_checksum) x (clauses in ALTER TABLE). + --echo # iteration 1 set global maria_page_checksum = 0 ; create table t1(a int) engine=maria ; @@ -1054,3 +1060,498 @@ perl; close FILE; EOF drop table t1; + +# +# Test for BUG#37005 +# "Maria: ALTER TABLE TRANSACTIONAL=0 leaves table transactional inside Maria" +# + +# we scan through combinations in the cartesian product of +# (clauses in CREATE TABLE) x (clauses in ALTER TABLE). + +--echo # iteration 1 +create table t1(a int) engine=maria ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 modify a bigint ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 2 +create table t1(a int) engine=maria ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 3 +create table t1(a int) engine=maria ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 4 +create table t1(a int) engine=maria ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 engine=maria ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 5 +create table t1(a int) engine=maria ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 engine=maria transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 6 +create table t1(a int) engine=maria ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 engine=maria transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 7 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 modify a bigint ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 8 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 9 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 10 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 engine=maria ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 11 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 engine=maria transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 12 +create table t1(a int) engine=maria transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 engine=maria transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 13 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 modify a bigint ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 14 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 15 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 16 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 engine=maria ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 17 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 engine=maria transactional=0 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + +--echo # iteration 18 +create table t1(a int) engine=maria transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF + +alter table t1 engine=maria transactional=1 ; +show create table t1; +--exec $MARIA_CHK -dv $MYSQLTEST_VARDIR/master-data/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +perl; + use strict; + use warnings; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + open(FILE, "<", $fname) or die; + print grep(/Crashsafe/, <FILE>); + close FILE; +EOF +drop table t1; + + |