Commit 3d46768d authored by Marko Mäkelä's avatar Marko Mäkelä

Merge 10.1 into 10.2

parents 8773a5e1 4b05d60e
SET GLOBAL innodb_file_format = `Barracuda`; SET GLOBAL innodb_fast_shutdown=0;
SET GLOBAL innodb_file_per_table = ON;
SHOW VARIABLES LIKE 'innodb_encrypt%'; SHOW VARIABLES LIKE 'innodb_encrypt%';
Variable_name Value Variable_name Value
innodb_encrypt_log OFF innodb_encrypt_log OFF
...@@ -87,47 +86,47 @@ Innodb_pages0_read 3 ...@@ -87,47 +86,47 @@ Innodb_pages0_read 3
# Restart Success! # Restart Success!
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 3 Innodb_pages0_read 1
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 3 Innodb_pages0_read 1
use test; use test;
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 3 Innodb_pages0_read 1
use innodb_encrypted_1; use innodb_encrypted_1;
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 3 Innodb_pages0_read 1
use innodb_encrypted_2; use innodb_encrypted_2;
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 3 Innodb_pages0_read 1
use innodb_encrypted_3; use innodb_encrypted_3;
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 3 Innodb_pages0_read 1
use innodb_encrypted_1; use innodb_encrypted_1;
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 3 Innodb_pages0_read 1
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 103 Innodb_pages0_read 101
use innodb_encrypted_2; use innodb_encrypted_2;
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 103 Innodb_pages0_read 101
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 203 Innodb_pages0_read 201
use innodb_encrypted_3; use innodb_encrypted_3;
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 203 Innodb_pages0_read 201
show status like 'innodb_pages0_read%'; show status like 'innodb_pages0_read%';
Variable_name Value Variable_name Value
Innodb_pages0_read 303 Innodb_pages0_read 301
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%'; SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%';
COUNT(*) COUNT(*)
100 100
......
...@@ -6,13 +6,12 @@ ...@@ -6,13 +6,12 @@
-- source include/not_embedded.inc -- source include/not_embedded.inc
--disable_query_log --disable_query_log
let $innodb_file_format_orig = `SELECT @@innodb_file_format`;
let $innodb_file_per_table_orig = `SELECT @@innodb_file_per_table`;
let $innodb_encryption_threads_orig = `SELECT @@global.innodb_encryption_threads`; let $innodb_encryption_threads_orig = `SELECT @@global.innodb_encryption_threads`;
--enable_query_log --enable_query_log
SET GLOBAL innodb_file_format = `Barracuda`; # empty the change buffer and the undo logs to avoid extra reads
SET GLOBAL innodb_file_per_table = ON; SET GLOBAL innodb_fast_shutdown=0;
--source include/restart_mysqld.inc
SHOW VARIABLES LIKE 'innodb_encrypt%'; SHOW VARIABLES LIKE 'innodb_encrypt%';
...@@ -29,7 +28,8 @@ let $tables = 100; ...@@ -29,7 +28,8 @@ let $tables = 100;
--disable_query_log --disable_query_log
while ($tables) while ($tables)
{ {
eval create table t_$tables (a int not null primary key, b varchar(200)) engine=innodb; eval create table t_$tables (a int not null primary key, b varchar(200)) engine=innodb
stats_persistent=0;
commit; commit;
let $rows = 100; let $rows = 100;
while($rows) while($rows)
...@@ -64,7 +64,8 @@ set autocommit=0; ...@@ -64,7 +64,8 @@ set autocommit=0;
let $tables = 100; let $tables = 100;
while ($tables) while ($tables)
{ {
eval create table t_$tables (a int not null primary key, b varchar(200)) engine=innodb encrypted=yes; eval create table t_$tables (a int not null primary key, b varchar(200)) engine=innodb
stats_persistent=0 encrypted=yes;
commit; commit;
let $rows = 100; let $rows = 100;
while($rows) while($rows)
...@@ -100,7 +101,8 @@ set autocommit=0; ...@@ -100,7 +101,8 @@ set autocommit=0;
let $tables = 100; let $tables = 100;
while ($tables) while ($tables)
{ {
eval create table t_$tables (a int not null primary key, b varchar(200)) engine=innodb encrypted=no; eval create table t_$tables (a int not null primary key, b varchar(200)) engine=innodb
stats_persistent=0 encrypted=no;
commit; commit;
let $rows = 100; let $rows = 100;
while($rows) while($rows)
...@@ -268,7 +270,5 @@ drop database innodb_encrypted_2; ...@@ -268,7 +270,5 @@ drop database innodb_encrypted_2;
drop database innodb_encrypted_3; drop database innodb_encrypted_3;
--disable_query_log --disable_query_log
EVAL SET GLOBAL innodb_file_per_table = $innodb_file_per_table_orig;
EVAL SET GLOBAL innodb_file_format = $innodb_file_format_orig;
EVAL SET GLOBAL innodb_encryption_threads = $innodb_encryption_threads_orig; EVAL SET GLOBAL innodb_encryption_threads = $innodb_encryption_threads_orig;
--enable_query_log --enable_query_log
...@@ -30,15 +30,14 @@ x ...@@ -30,15 +30,14 @@ x
x x
x x
connect con1,localhost,root,,; connect con1,localhost,root,,;
connection con1;
BEGIN; BEGIN;
DELETE FROM t1 WHERE a=1; DELETE FROM t1 WHERE a=1;
INSERT INTO t1 VALUES(1,'X',1); INSERT INTO t1 VALUES(1,'X',1);
SET DEBUG='+d,crash_after_log_ibuf_upd_inplace'; SET DEBUG_DBUG='+d,crash_after_log_ibuf_upd_inplace';
Warnings:
Warning 1287 '@@debug' is deprecated and will be removed in a future release. Please use '@@debug_dbug' instead
SELECT b FROM t1 LIMIT 3; SELECT b FROM t1 LIMIT 3;
ERROR HY000: Lost connection to MySQL server during query ERROR HY000: Lost connection to MySQL server during query
disconnect con1;
connection default;
FOUND /Wrote log record for ibuf update in place operation/ in my_restart.err FOUND /Wrote log record for ibuf update in place operation/ in my_restart.err
CHECK TABLE t1; CHECK TABLE t1;
Table Op Msg_type Msg_text Table Op Msg_type Msg_text
......
...@@ -17,6 +17,9 @@ CREATE TABLE t1( ...@@ -17,6 +17,9 @@ CREATE TABLE t1(
INDEX(b)) INDEX(b))
ENGINE=InnoDB STATS_PERSISTENT=0; ENGINE=InnoDB STATS_PERSISTENT=0;
--let $_server_id= `SELECT @@server_id`
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
# The flag innodb_change_buffering_debug is only available in debug builds. # The flag innodb_change_buffering_debug is only available in debug builds.
# It instructs InnoDB to try to evict pages from the buffer pool when # It instructs InnoDB to try to evict pages from the buffer pool when
# change buffering is possible, so that the change buffer will be used # change buffering is possible, so that the change buffer will be used
...@@ -46,27 +49,22 @@ BEGIN; ...@@ -46,27 +49,22 @@ BEGIN;
SELECT b FROM t1 LIMIT 3; SELECT b FROM t1 LIMIT 3;
connect (con1,localhost,root,,); connect (con1,localhost,root,,);
connection con1;
BEGIN; BEGIN;
DELETE FROM t1 WHERE a=1; DELETE FROM t1 WHERE a=1;
# This should be buffered, if innodb_change_buffering_debug = 1 is in effect. # This should be buffered, if innodb_change_buffering_debug = 1 is in effect.
INSERT INTO t1 VALUES(1,'X',1); INSERT INTO t1 VALUES(1,'X',1);
SET DEBUG='+d,crash_after_log_ibuf_upd_inplace'; SET DEBUG_DBUG='+d,crash_after_log_ibuf_upd_inplace';
--exec echo "wait" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect --exec echo "wait" > $_expect_file_name
--error 2013 --error 2013
# This should force a change buffer merge # This should force a change buffer merge
SELECT b FROM t1 LIMIT 3; SELECT b FROM t1 LIMIT 3;
disconnect con1;
connection default;
let SEARCH_PATTERN=Wrote log record for ibuf update in place operation; let SEARCH_PATTERN=Wrote log record for ibuf update in place operation;
--source include/search_pattern_in_file.inc --source include/search_pattern_in_file.inc
--source include/start_mysqld.inc
# Write file to make mysql-test-run.pl start up the server again
--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
--enable_reconnect
--source include/wait_until_connected_again.inc
CHECK TABLE t1; CHECK TABLE t1;
# Cleanup
DROP TABLE t1; DROP TABLE t1;
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment