diff options
Diffstat (limited to 'mysql-test/suite/maria/maria-no-logging.test')
-rw-r--r-- | mysql-test/suite/maria/maria-no-logging.test | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/mysql-test/suite/maria/maria-no-logging.test b/mysql-test/suite/maria/maria-no-logging.test new file mode 100644 index 00000000..5d802915 --- /dev/null +++ b/mysql-test/suite/maria/maria-no-logging.test @@ -0,0 +1,86 @@ +# test of cases where we can safely disable logging + +--source include/have_maria.inc +# can't restart server in embedded +--source include/not_embedded.inc +--source include/default_charset.inc + +set global aria_log_file_size=4294959104; + +--disable_warnings +drop database if exists mysqltest; +--enable_warnings +create database mysqltest; + +connect (admin, localhost, root,,mysqltest,,); +--enable_reconnect + +connection default; +use mysqltest; +--enable_reconnect + +# checkpoints can make log unrepeatable +let $def_checkinterval=`select @@global.aria_checkpoint_interval`; +set global aria_checkpoint_interval=0; + +# Prepare table to help for big load +create table t2 (a varchar(100)) engine=myisam; +insert into t2 select repeat('z',100); +insert into t2 select * from t2; +insert into t2 select * from t2; +insert into t2 select * from t2; +insert into t2 select * from t2; +insert into t2 select * from t2; +insert into t2 select * from t2; + +# INSERT SELECT + +# no optimization because table not empty + +# SHOW ENGINE ARIA LOGS could be influenced by older logs +-- source include/maria_empty_logs.inc +create table t1 (a varchar(100)) engine=aria transactional=1; +show create table t1; +--replace_regex /; .+aria_log/aria_log/ +show engine aria logs; + +insert into t1 values('a'); +insert into t1 select * from t2; +--replace_regex /; .+aria_log/aria_log/ +show engine aria logs; +select count(*) from t1; + +# optimization because table is empty +-- source include/maria_empty_logs.inc +truncate table t1; +insert into t1 select * from t2; +--replace_regex /; .+aria_log/aria_log/ +show engine aria logs; +select count(*) from t1; + +drop table t1; + +# same for CREATE SELECT + +# no optimization because table not empty +-- source include/maria_empty_logs.inc +create table t1 (a varchar(100)) engine=aria transactional=1; +insert into t1 values('a'); +create table if not exists t1 select * from t2; +--replace_regex /; .+aria_log/aria_log/ +show engine aria logs; + +# optimization because table is empty +-- source include/maria_empty_logs.inc +drop table t1; +create table t1 engine=aria transactional=1 select * from t2; +--replace_regex /; .+aria_log/aria_log/ +show engine aria logs; + +drop database mysqltest; + +--disable_result_log +--disable_query_log +eval set global aria_checkpoint_interval=$def_checkinterval; +--enable_result_log +--enable_query_log |