mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Fix for BUG#35441 "Cannot change PAGE_CHECKSUM table option".
A big test was written and is committed, which found 3 bugs in total: - ALTER TABLE PAGE_CHECKSUM=0 sometimes had no effect - ALTER TABLE ENGINE=MARIA sometimes changed page checksumming in the table - SHOW CREATE TABLE and 'maria_chk -dv' disagreed on the presence of page checksumming. They are all fixed here. Side-effect is that SHOW CREATE TABLE now always prints a PAGE_CHECKSUM clause for Maria tables. mysql-test/mysql-test-run.pl: allow calling maria_chk and maria_pack in tests mysql-test/r/maria.result: PAGE_CHECKSUM=0 is now always printed mysql-test/t/create.test: PAGE_CHECKSUM= is now always present in SHOW CREATE TABLE of Maria tables mysql-test/t/disabled.def: better bug number sql/sql_table.cc: If ALTER TABLE PAGE_CHECKSUM=#, it affects the engine's data (structure of data pages) so a full table rebuild is needed. We already did so for ROW_FORMAT=#, following same logic. This fixes disagreements between SHOW CREATE TABLE and 'maria_chk -dv' regarding the presence of page checksums after certain ALTER TABLE (as seen with the attached testcase). storage/maria/ha_maria.cc: In ALTER TABLE PAGE_CHECKSUM=0, ha_maria::update_create_info() started with create_info->page_checksum=HA_CHOICE_NO and wrongly set it to the table's original setting, which is HA_CHOICE_YES if the table had page checksums, in which case the ALTER left page checksum in the table. The fix for this bug is: only if create_info->page_checksum is undefined (no clause in the ALTER TABLE, or we are in SHOW CREATE TABLE) we may set HA_CHOICE_YES. The second bug in this file was that the code left HA_CHOICE_UNDEF if the table didn't have page checksums originally, leading ALTER TABLE ENGINE=MARIA to change the table's page checksum to the value of maria_page_checksum. This is fixed by setting create_info->page_checksum to HA_CHOICE_NO if UNDEF and table does not have page checksum. The side-effect of this last fix, because ha_maria::update_create_info() is also called by SHOW CREATE TABLE, is that: SET GLOBAL maria_page_checksum=0; CREATE TABLE t(a INT) ENGINE=MARIA; SHOW CREATE TABLE t; which used to not show a PAGE_CHECKSUM= clause, now shows PAGE_CHECKSUM=0. I consider this side-effect good: - clearer for users: it eliminates the differences between the above and this: SET GLOBAL maria_page_checksum=0; CREATE TABLE t(a INT) ENGINE=MARIA PAGE_CHECKSUM=0; SHOW CREATE TABLE t; which already showed PAGE_CHECKSUM=0; difference which is not easy to explain. - if using mysqldump to copy from one server to another, it eliminates the dependency on the value of maria_page_checksum being the same on original server and new server. mysql-test/r/maria-page-checksum.result: Result. If you undo the code fixes and run the test, the new result file will show bugs at: error lineno 56 : expected PAGE_CHECKSUM=1, got Page checksums are not used error lineno 73 : expected PAGE_CHECKSUM=0, got ) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 error lineno 110 : expected PAGE_CHECKSUM=1, got Page checksums are not used error lineno 164 : expected PAGE_CHECKSUM=1, got Page checksums are not used error lineno 181 : expected PAGE_CHECKSUM=0, got ) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 error lineno 218 : expected PAGE_CHECKSUM=1, got Page checksums are not used error lineno 253 : expected PAGE_CHECKSUM=0, got ) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 error lineno 307 : expected PAGE_CHECKSUM=0, got ) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 error lineno 361 : expected PAGE_CHECKSUM=0, got ) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 error lineno 415 : expected PAGE_CHECKSUM=0, got ) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 error lineno 488 : expected PAGE_CHECKSUM=1, got Page checksums are not used error lineno 505 : expected PAGE_CHECKSUM=0, got ) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 error lineno 542 : expected PAGE_CHECKSUM=1, got Page checksums are not used error lineno 577 : expected PAGE_CHECKSUM=0, got ) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 error lineno 631 : expected PAGE_CHECKSUM=0, got ) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 (lineno is line number in the result file) mysql-test/t/maria-page-checksum.test: Test for the 3 bugs
This commit is contained in:
@ -2178,6 +2178,22 @@ sub environment_setup () {
|
||||
"$glob_basedir/storage/myisam/myisampack",
|
||||
"$glob_basedir/myisam/myisampack"));
|
||||
|
||||
# ----------------------------------------------------
|
||||
# Setup env so childs can execute maria_pack and maria_chk
|
||||
# ----------------------------------------------------
|
||||
$ENV{'MARIA_CHK'}= mtr_native_path(mtr_exe_exists(
|
||||
vs_config_dirs('storage/maria', 'maria_chk'),
|
||||
vs_config_dirs('maria', 'maria_chk'),
|
||||
"$path_client_bindir/maria_chk",
|
||||
"$glob_basedir/storage/maria/maria_chk",
|
||||
"$glob_basedir/maria/maria_chk"));
|
||||
$ENV{'MARIA_PACK'}= mtr_native_path(mtr_exe_exists(
|
||||
vs_config_dirs('storage/maria', 'maria_pack'),
|
||||
vs_config_dirs('maria', 'maria_pack'),
|
||||
"$path_client_bindir/maria_pack",
|
||||
"$glob_basedir/storage/maria/maria_pack",
|
||||
"$glob_basedir/maria/maria_pack"));
|
||||
|
||||
# ----------------------------------------------------
|
||||
# We are nice and report a bit about our settings
|
||||
# ----------------------------------------------------
|
||||
|
651
mysql-test/r/maria-page-checksum.result
Normal file
651
mysql-test/r/maria-page-checksum.result
Normal file
@ -0,0 +1,651 @@
|
||||
select @@global.maria_page_checksum;
|
||||
@@global.maria_page_checksum
|
||||
1
|
||||
# iteration 1
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 2
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 3
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 4
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 5
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 6
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 7
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 8
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 9
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 10
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 11
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 12
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 13
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 14
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 15
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 16
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 17
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 18
|
||||
set global maria_page_checksum = 0 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 19
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 20
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 21
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 22
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 23
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 24
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 25
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 26
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 27
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 28
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 29
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 30
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 31
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 32
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 33
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 0 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 34
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 engine=maria ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
||||
# iteration 35
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=0 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=0 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
Page checksums are not used
|
||||
drop table t1;
|
||||
# iteration 36
|
||||
set global maria_page_checksum = 1 ;
|
||||
create table t1(a int) engine=maria PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
set global maria_page_checksum = 1 ;
|
||||
alter table t1 PAGE_CHECKSUM=1 ;
|
||||
show create table t1 /* expecting PAGE_CHECKSUM=1 */ ;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
||||
Page checksums are used
|
||||
drop table t1;
|
@ -993,7 +993,7 @@ t1 CREATE TABLE `t1` (
|
||||
`v` varchar(10) DEFAULT NULL,
|
||||
`c` char(10) DEFAULT NULL,
|
||||
`t` text
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
create table t2 like t1;
|
||||
show create table t2;
|
||||
Table Create Table
|
||||
@ -1001,7 +1001,7 @@ t2 CREATE TABLE `t2` (
|
||||
`v` varchar(10) DEFAULT NULL,
|
||||
`c` char(10) DEFAULT NULL,
|
||||
`t` text
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
create table t3 select * from t1;
|
||||
show create table t3;
|
||||
Table Create Table
|
||||
@ -1009,7 +1009,7 @@ t3 CREATE TABLE `t3` (
|
||||
`v` varchar(10) DEFAULT NULL,
|
||||
`c` char(10) DEFAULT NULL,
|
||||
`t` text
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
alter table t1 modify c varchar(10);
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
@ -1017,7 +1017,7 @@ t1 CREATE TABLE `t1` (
|
||||
`v` varchar(10) DEFAULT NULL,
|
||||
`c` varchar(10) DEFAULT NULL,
|
||||
`t` text
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
alter table t1 modify v char(10);
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
@ -1025,7 +1025,7 @@ t1 CREATE TABLE `t1` (
|
||||
`v` char(10) DEFAULT NULL,
|
||||
`c` varchar(10) DEFAULT NULL,
|
||||
`t` text
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
alter table t1 modify t varchar(10);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 't' at row 2
|
||||
@ -1035,7 +1035,7 @@ t1 CREATE TABLE `t1` (
|
||||
`v` char(10) DEFAULT NULL,
|
||||
`c` varchar(10) DEFAULT NULL,
|
||||
`t` varchar(10) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
select concat('*',v,'*',c,'*',t,'*') from t1;
|
||||
concat('*',v,'*',c,'*',t,'*')
|
||||
*+*+*+ *
|
||||
@ -1051,7 +1051,7 @@ t1 CREATE TABLE `t1` (
|
||||
KEY `v` (`v`),
|
||||
KEY `c` (`c`),
|
||||
KEY `t` (`t`(10))
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
270
|
||||
@ -1270,7 +1270,7 @@ t1 CREATE TABLE `t1` (
|
||||
KEY `c` (`c`),
|
||||
KEY `t` (`t`(10)),
|
||||
KEY `v` (`v`)
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
select count(*) from t1 where v='a';
|
||||
count(*)
|
||||
10
|
||||
@ -1350,7 +1350,7 @@ t1 CREATE TABLE `t1` (
|
||||
KEY `c` (`c`),
|
||||
KEY `t` (`t`(10)),
|
||||
KEY `v` (`v`(30))
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
select count(*) from t1 where v='a';
|
||||
count(*)
|
||||
10
|
||||
@ -1430,7 +1430,7 @@ t1 CREATE TABLE `t1` (
|
||||
KEY `c` (`c`),
|
||||
KEY `t` (`t`(10)),
|
||||
KEY `v` (`v`)
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
select v,count(*) from t1 group by v limit 10;
|
||||
v count(*)
|
||||
a 1
|
||||
@ -1508,14 +1508,14 @@ t1 CREATE TABLE `t1` (
|
||||
KEY `v` (`v`(5)),
|
||||
KEY `c` (`c`(5)),
|
||||
KEY `t` (`t`(5))
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (v char(10) character set utf8);
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`v` char(10) CHARACTER SET utf8 DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (v varchar(10), c char(10)) row_format=fixed;
|
||||
show create table t1;
|
||||
@ -1523,7 +1523,7 @@ Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`v` varchar(10) DEFAULT NULL,
|
||||
`c` char(10) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED
|
||||
insert into t1 values('a','a'),('a ','a ');
|
||||
select concat('*',v,'*',c,'*') from t1;
|
||||
concat('*',v,'*',c,'*')
|
||||
@ -1556,7 +1556,7 @@ show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`v` mediumtext
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (v varchar(65530) character set utf8);
|
||||
Warnings:
|
||||
@ -1565,7 +1565,7 @@ show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`v` mediumtext CHARACTER SET utf8
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (v varchar(65535));
|
||||
ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
|
||||
@ -1669,7 +1669,7 @@ Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) NOT NULL,
|
||||
KEY `a` (`a`) KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (a int not null, key `a` (a) key_block_size=2048);
|
||||
show create table t1;
|
||||
@ -1677,7 +1677,7 @@ Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) NOT NULL,
|
||||
KEY `a` (`a`) KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (a varchar(2048), key `a` (a));
|
||||
Warnings:
|
||||
@ -1687,7 +1687,7 @@ Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` varchar(2048) DEFAULT NULL,
|
||||
KEY `a` (`a`(1112))
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (a varchar(2048), key `a` (a) key_block_size=1024);
|
||||
Warnings:
|
||||
@ -1697,7 +1697,7 @@ Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` varchar(2048) DEFAULT NULL,
|
||||
KEY `a` (`a`(1112)) KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (a int not null, b varchar(2048), key (a), key(b)) key_block_size=1024;
|
||||
Warnings:
|
||||
@ -1709,7 +1709,7 @@ t1 CREATE TABLE `t1` (
|
||||
`b` varchar(2048) DEFAULT NULL,
|
||||
KEY `a` (`a`) KEY_BLOCK_SIZE=8192,
|
||||
KEY `b` (`b`(1112)) KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=1024
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=1024
|
||||
alter table t1 key_block_size=2048;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
@ -1718,7 +1718,7 @@ t1 CREATE TABLE `t1` (
|
||||
`b` varchar(2048) DEFAULT NULL,
|
||||
KEY `a` (`a`) KEY_BLOCK_SIZE=8192,
|
||||
KEY `b` (`b`(1112)) KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=2048
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=2048
|
||||
alter table t1 add c int, add key (c);
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
@ -1729,7 +1729,7 @@ t1 CREATE TABLE `t1` (
|
||||
KEY `a` (`a`) KEY_BLOCK_SIZE=8192,
|
||||
KEY `b` (`b`(1112)) KEY_BLOCK_SIZE=8192,
|
||||
KEY `c` (`c`) KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=2048
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=2048
|
||||
alter table t1 key_block_size=0;
|
||||
alter table t1 add d int, add key (d);
|
||||
show create table t1;
|
||||
@ -1743,7 +1743,7 @@ t1 CREATE TABLE `t1` (
|
||||
KEY `b` (`b`(1112)) KEY_BLOCK_SIZE=8192,
|
||||
KEY `c` (`c`) KEY_BLOCK_SIZE=8192,
|
||||
KEY `d` (`d`)
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (a int not null, b varchar(2048), key (a), key(b)) key_block_size=8192;
|
||||
Warnings:
|
||||
@ -1755,7 +1755,7 @@ t1 CREATE TABLE `t1` (
|
||||
`b` varchar(2048) DEFAULT NULL,
|
||||
KEY `a` (`a`),
|
||||
KEY `b` (`b`(1112))
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=8192
|
||||
drop table t1;
|
||||
create table t1 (a int not null, b varchar(2048), key (a) key_block_size=1024, key(b)) key_block_size=8192;
|
||||
Warnings:
|
||||
@ -1767,7 +1767,7 @@ t1 CREATE TABLE `t1` (
|
||||
`b` varchar(2048) DEFAULT NULL,
|
||||
KEY `a` (`a`),
|
||||
KEY `b` (`b`(1112))
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=8192
|
||||
drop table t1;
|
||||
create table t1 (a int not null, b int, key (a) key_block_size=1024, key(b) key_block_size=8192) key_block_size=16384;
|
||||
show create table t1;
|
||||
@ -1777,7 +1777,7 @@ t1 CREATE TABLE `t1` (
|
||||
`b` int(11) DEFAULT NULL,
|
||||
KEY `a` (`a`) KEY_BLOCK_SIZE=8192,
|
||||
KEY `b` (`b`) KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=16384
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=16384
|
||||
drop table t1;
|
||||
create table t1 (a int not null, key `a` (a) key_block_size=512);
|
||||
show create table t1;
|
||||
@ -1785,7 +1785,7 @@ Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) NOT NULL,
|
||||
KEY `a` (`a`) KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (a varchar(2048), key `a` (a) key_block_size=1000000000000000000);
|
||||
Warnings:
|
||||
@ -1795,7 +1795,7 @@ Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` varchar(2048) DEFAULT NULL,
|
||||
KEY `a` (`a`(1112)) KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (a int not null, key `a` (a) key_block_size=1025);
|
||||
show create table t1;
|
||||
@ -1803,7 +1803,7 @@ Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) NOT NULL,
|
||||
KEY `a` (`a`) KEY_BLOCK_SIZE=8192
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0
|
||||
drop table t1;
|
||||
create table t1 (a int not null, key key_block_size=1024 (a));
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=1024 (a))' at line 1
|
||||
@ -1859,14 +1859,14 @@ show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 TRANSACTIONAL=0
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 TRANSACTIONAL=0
|
||||
drop table t1;
|
||||
create table t1 (a int) row_format=dynamic transactional=0;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC TRANSACTIONAL=0
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC TRANSACTIONAL=0
|
||||
drop table t1;
|
||||
create table t1 (a int) row_format=dynamic transactional=1;
|
||||
Warnings:
|
||||
@ -1875,13 +1875,13 @@ show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 ROW_FORMAT=PAGE TRANSACTIONAL=1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1
|
||||
alter table t1 row_format=PAGE;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 ROW_FORMAT=PAGE TRANSACTIONAL=1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1
|
||||
alter table t1 row_format=DYNAMIC;
|
||||
Warnings:
|
||||
Note 1478 Row format set to PAGE because of TRANSACTIONAL=1 option
|
||||
@ -1889,39 +1889,39 @@ show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 ROW_FORMAT=PAGE TRANSACTIONAL=1
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1
|
||||
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 ROW_FORMAT=PAGE TRANSACTIONAL=0
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=0
|
||||
alter table t1 row_format=DYNAMIC;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC TRANSACTIONAL=0
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC TRANSACTIONAL=0
|
||||
drop table t1;
|
||||
create table t1 (a int) row_format=PAGE;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 ROW_FORMAT=PAGE
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE
|
||||
drop table t1;
|
||||
create table t1 (a int) row_format=PAGE TRANSACTIONAL=DEFAULT;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 ROW_FORMAT=PAGE
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE
|
||||
alter table t1 row_format=DYNAMIC;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
|
||||
) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC
|
||||
drop table t1;
|
||||
create table `t1` (
|
||||
t1_name varchar(255) default null,
|
||||
|
@ -1332,11 +1332,11 @@ drop function f1;
|
||||
# Bug#25629 CREATE TABLE LIKE does not work with INFORMATION_SCHEMA
|
||||
#
|
||||
create table t1 like information_schema.processlist;
|
||||
--replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" ""
|
||||
--replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" ""
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
create temporary table t1 like information_schema.processlist;
|
||||
--replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" ""
|
||||
--replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" ""
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
create table t1 like information_schema.character_sets;
|
||||
|
@ -24,4 +24,4 @@ wait_timeout : Bug#32801 wait_timeout.test fails randomly
|
||||
ctype_create : Bug#32965 main.ctype_create fails
|
||||
status : Bug#32966 main.status fails
|
||||
ps_ddl : Bug#12093 2007-12-14 pending WL#4165 / WL#4166
|
||||
maria-preload : Bug#35030 unrepeatable output of SHOW STATUS
|
||||
maria-preload : Bug#34911 unrepeatable output of SHOW STATUS
|
||||
|
1045
mysql-test/t/maria-page-checksum.test
Normal file
1045
mysql-test/t/maria-page-checksum.test
Normal file
File diff suppressed because it is too large
Load Diff
@ -5161,6 +5161,7 @@ compare_tables(TABLE *table,
|
||||
create_info->used_fields & HA_CREATE_USED_CHARSET ||
|
||||
create_info->used_fields & HA_CREATE_USED_DEFAULT_CHARSET ||
|
||||
create_info->used_fields & HA_CREATE_USED_ROW_FORMAT ||
|
||||
create_info->used_fields & HA_CREATE_USED_PAGE_CHECKSUM ||
|
||||
(alter_info->flags & (ALTER_RECREATE | ALTER_FOREIGN_KEY)) ||
|
||||
order_num ||
|
||||
!table->s->mysql_version ||
|
||||
|
@ -2343,8 +2343,10 @@ void ha_maria::update_create_info(HA_CREATE_INFO *create_info)
|
||||
Show always page checksums, as this can be forced with
|
||||
maria_page_checksums variable
|
||||
*/
|
||||
if (file->s->options & HA_OPTION_PAGE_CHECKSUM)
|
||||
create_info->page_checksum= HA_CHOICE_YES;
|
||||
if (create_info->page_checksum == HA_CHOICE_UNDEF)
|
||||
create_info->page_checksum=
|
||||
(file->s->options & HA_OPTION_PAGE_CHECKSUM) ? HA_CHOICE_YES :
|
||||
HA_CHOICE_NO;
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user