mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 20:12:31 +01:00
90 lines
2.7 KiB
Text
90 lines
2.7 KiB
Text
set global aria_log_file_size=4294959104;
|
|
drop database if exists mysqltest;
|
|
create database mysqltest;
|
|
connect admin, localhost, root,,mysqltest,,;
|
|
connection default;
|
|
use mysqltest;
|
|
* TEST of recovery with blobs
|
|
connection default;
|
|
connection admin;
|
|
* shut down mysqld, removed logs, restarted it
|
|
connection default;
|
|
create table t1 (a int, b longtext) engine=aria table_checksum=1;
|
|
connection admin;
|
|
* copied t1 for feeding_recovery
|
|
connection default;
|
|
insert into t1 values (1,"123456789012345678901234567890"),(2,"09876543210987654321");
|
|
connection admin;
|
|
flush table t1;
|
|
* copied t1 for comparison
|
|
connection default;
|
|
lock table t1 write;
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
update t1 set b=CONCAT(b,b);
|
|
select a,length(b) from t1;
|
|
a length(b)
|
|
1 31457280
|
|
2 20971520
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
update t1 set b=mid(b,1,length(b)/2);
|
|
select a,length(b) from t1;
|
|
a length(b)
|
|
1 8
|
|
2 5
|
|
connection admin;
|
|
SET SESSION debug_dbug="+d,maria_flush_whole_log,maria_crash";
|
|
* crashing mysqld intentionally
|
|
set global aria_checkpoint_interval=1;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
* copied t1 back for feeding_recovery
|
|
* recovery happens
|
|
check table t1 extended;
|
|
Table Op Msg_type Msg_text
|
|
mysqltest.t1 check status OK
|
|
* testing that checksum after recovery is as expected
|
|
Checksum-check
|
|
ok
|
|
connection default;
|
|
use mysqltest;
|
|
drop table t1;
|
|
drop database mysqltest_for_feeding_recovery;
|
|
drop database mysqltest_for_comparison;
|
|
drop database mysqltest;
|