mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Fixed test failure on innodb_encryption
After MDEV-13583: Improvements for MTR rebootstrap introduced in MDEV-12042 bootsrap correctly creates mysql/innodb_table_stats and mysql/innodb_index_stats InnoDB tables before innodb_encryption test starts. These tables are also encrypted or decrypted, thus we need to wait also these tables (if not we could randomly get different results as system tablespace and these tables are encrypted or decrypted in parallel).
This commit is contained in:
@ -12,4 +12,4 @@
|
|||||||
|
|
||||||
innodb_scrub : MDEV-8139 scrubbing does not work reliably
|
innodb_scrub : MDEV-8139 scrubbing does not work reliably
|
||||||
innodb_scrub_background : MDEV-8139 scrubbing does not work reliably
|
innodb_scrub_background : MDEV-8139 scrubbing does not work reliably
|
||||||
innodb_encryption : an adjustment for MDEV-13583 is needed
|
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
call mtr.add_suppression("InnoDB: New log files created");
|
|
||||||
call mtr.add_suppression("InnoDB: Creating foreign key constraint system tables.");
|
|
||||||
SET @start_global_value = @@global.innodb_encryption_threads;
|
SET @start_global_value = @@global.innodb_encryption_threads;
|
||||||
SHOW VARIABLES LIKE 'innodb_encrypt%';
|
SHOW VARIABLES LIKE 'innodb_encrypt%';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
@ -14,6 +12,8 @@ SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_
|
|||||||
NAME
|
NAME
|
||||||
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
||||||
NAME
|
NAME
|
||||||
|
mysql/innodb_table_stats
|
||||||
|
mysql/innodb_index_stats
|
||||||
./ibdata1
|
./ibdata1
|
||||||
# Success!
|
# Success!
|
||||||
# Now turn off encryption and wait for threads to decrypt everything
|
# Now turn off encryption and wait for threads to decrypt everything
|
||||||
@ -21,6 +21,8 @@ SET GLOBAL innodb_encrypt_tables = off;
|
|||||||
# Wait max 10 min for key encryption threads to encrypt all spaces
|
# Wait max 10 min for key encryption threads to encrypt all spaces
|
||||||
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
|
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
|
||||||
NAME
|
NAME
|
||||||
|
mysql/innodb_table_stats
|
||||||
|
mysql/innodb_index_stats
|
||||||
./ibdata1
|
./ibdata1
|
||||||
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
||||||
NAME
|
NAME
|
||||||
@ -33,6 +35,8 @@ SET GLOBAL innodb_encrypt_tables = on;
|
|||||||
# Wait 15s to check that nothing gets encrypted
|
# Wait 15s to check that nothing gets encrypted
|
||||||
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
|
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
|
||||||
NAME
|
NAME
|
||||||
|
mysql/innodb_table_stats
|
||||||
|
mysql/innodb_index_stats
|
||||||
./ibdata1
|
./ibdata1
|
||||||
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
||||||
NAME
|
NAME
|
||||||
@ -44,6 +48,8 @@ SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_
|
|||||||
NAME
|
NAME
|
||||||
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
||||||
NAME
|
NAME
|
||||||
|
mysql/innodb_table_stats
|
||||||
|
mysql/innodb_index_stats
|
||||||
./ibdata1
|
./ibdata1
|
||||||
# Success!
|
# Success!
|
||||||
# Restart mysqld --innodb_encrypt_tables=0 --innodb_encryption_threads=0
|
# Restart mysqld --innodb_encrypt_tables=0 --innodb_encryption_threads=0
|
||||||
@ -56,6 +62,8 @@ innodb_encryption_rotation_iops 100
|
|||||||
innodb_encryption_threads 0
|
innodb_encryption_threads 0
|
||||||
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
||||||
NAME
|
NAME
|
||||||
|
mysql/innodb_table_stats
|
||||||
|
mysql/innodb_index_stats
|
||||||
./ibdata1
|
./ibdata1
|
||||||
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
|
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
|
||||||
NAME
|
NAME
|
||||||
|
@ -8,9 +8,6 @@
|
|||||||
# embedded does not support restart
|
# embedded does not support restart
|
||||||
-- source include/not_embedded.inc
|
-- source include/not_embedded.inc
|
||||||
|
|
||||||
call mtr.add_suppression("InnoDB: New log files created");
|
|
||||||
call mtr.add_suppression("InnoDB: Creating foreign key constraint system tables.");
|
|
||||||
|
|
||||||
SET @start_global_value = @@global.innodb_encryption_threads;
|
SET @start_global_value = @@global.innodb_encryption_threads;
|
||||||
|
|
||||||
SHOW VARIABLES LIKE 'innodb_encrypt%';
|
SHOW VARIABLES LIKE 'innodb_encrypt%';
|
||||||
@ -19,7 +16,7 @@ SET GLOBAL innodb_encrypt_tables = ON;
|
|||||||
|
|
||||||
--echo # Wait max 10 min for key encryption threads to encrypt all spaces
|
--echo # Wait max 10 min for key encryption threads to encrypt all spaces
|
||||||
--let $wait_timeout= 600
|
--let $wait_timeout= 600
|
||||||
--let $wait_condition=SELECT COUNT(*) >= 1 FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
--let $wait_condition=SELECT COUNT(*) >= 3 FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
||||||
--source include/wait_condition.inc
|
--source include/wait_condition.inc
|
||||||
|
|
||||||
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
|
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
|
||||||
@ -62,7 +59,7 @@ SET GLOBAL innodb_encryption_threads=@start_global_value;
|
|||||||
|
|
||||||
--echo # Wait max 10 min for key encryption threads to encrypt all spaces
|
--echo # Wait max 10 min for key encryption threads to encrypt all spaces
|
||||||
--let $wait_timeout= 600
|
--let $wait_timeout= 600
|
||||||
--let $wait_condition=SELECT COUNT(*) >=1 FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
--let $wait_condition=SELECT COUNT(*) >=3 FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
|
||||||
--source include/wait_condition.inc
|
--source include/wait_condition.inc
|
||||||
|
|
||||||
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
|
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
|
||||||
|
Reference in New Issue
Block a user