12 changed files with 244 additions and 105 deletions
-
20cmake/install_macros.cmake
-
50mysql-test/main/cte_nonrecursive.result
-
36mysql-test/main/cte_nonrecursive.test
-
13mysql-test/suite/encryption/r/encryption_key_corruption.result
-
6mysql-test/suite/encryption/t/encryption_key_corruption.combinations
-
1mysql-test/suite/encryption/t/encryption_key_corruption.opt
-
44mysql-test/suite/encryption/t/encryption_key_corruption.test
-
57sql/sql_cte.cc
-
84storage/innobase/fil/fil0crypt.cc
-
8storage/innobase/include/fil0crypt.h
-
28storage/innobase/row/row0import.cc
-
2win/upgrade_wizard/upgradeDlg.cpp
@ -0,0 +1,13 @@ |
|||
call mtr.add_suppression("InnoDB: .*: Page 0 at offset 0 looks corrupted"); |
|||
call mtr.add_suppression("Index for table 'dst' is corrupt; try to repair it"); |
|||
call mtr.add_suppression("Page for tablespace .* is index page with id .* but that index is not found from configuration file"); |
|||
CREATE TABLE src (pk INT PRIMARY KEY, value INT) ENGINE=INNODB; |
|||
INSERT INTO src VALUES (1, 1), (2, 2), (3, 3); |
|||
FLUSH TABLES src FOR EXPORT; |
|||
UNLOCK TABLES; |
|||
DROP TABLE src; |
|||
CREATE TABLE dst (pk INT PRIMARY KEY, value INT) ENGINE=INNODB; |
|||
ALTER TABLE dst DISCARD TABLESPACE; |
|||
ALTER TABLE dst IMPORT TABLESPACE; |
|||
ERROR HY000: Index for table 'dst' is corrupt; try to repair it |
|||
DROP TABLE dst; |
|||
@ -0,0 +1,6 @@ |
|||
[crc32] |
|||
innodb-checksum-algorithm=crc32 |
|||
[none] |
|||
innodb-checksum-algorithm=none |
|||
[innodb] |
|||
innodb-checksum-algorithm=innodb |
|||
@ -0,0 +1 @@ |
|||
--innodb-encrypt-tables=1 |
|||
@ -0,0 +1,44 @@ |
|||
--source include/have_innodb.inc |
|||
--source include/have_example_key_management_plugin.inc |
|||
|
|||
call mtr.add_suppression("InnoDB: .*: Page 0 at offset 0 looks corrupted"); |
|||
call mtr.add_suppression("Index for table 'dst' is corrupt; try to repair it"); |
|||
call mtr.add_suppression("Page for tablespace .* is index page with id .* but that index is not found from configuration file"); |
|||
|
|||
let MYSQLD_DATADIR = `SELECT @@datadir`; |
|||
|
|||
|
|||
CREATE TABLE src (pk INT PRIMARY KEY, value INT) ENGINE=INNODB; |
|||
INSERT INTO src VALUES (1, 1), (2, 2), (3, 3); |
|||
|
|||
FLUSH TABLES src FOR EXPORT; |
|||
|
|||
--copy_file $MYSQLD_DATADIR/test/src.ibd $MYSQLD_DATADIR/test/tmp.ibd |
|||
--copy_file $MYSQLD_DATADIR/test/src.cfg $MYSQLD_DATADIR/test/tmp.cfg |
|||
|
|||
perl; |
|||
use strict; |
|||
die unless open(FILE, "+<$ENV{MYSQLD_DATADIR}/test/tmp.ibd"); |
|||
binmode FILE; |
|||
die unless seek(FILE, 3 * 16384 + 26, 0); |
|||
print FILE pack("N", 0x00000000); |
|||
close(FILE); |
|||
EOF |
|||
|
|||
UNLOCK TABLES; |
|||
|
|||
DROP TABLE src; |
|||
|
|||
CREATE TABLE dst (pk INT PRIMARY KEY, value INT) ENGINE=INNODB; |
|||
ALTER TABLE dst DISCARD TABLESPACE; |
|||
|
|||
--copy_file $MYSQLD_DATADIR/test/tmp.ibd $MYSQLD_DATADIR/test/dst.ibd |
|||
--copy_file $MYSQLD_DATADIR/test/tmp.cfg $MYSQLD_DATADIR/test/dst.cfg |
|||
|
|||
--error ER_NOT_KEYFILE |
|||
ALTER TABLE dst IMPORT TABLESPACE; |
|||
|
|||
DROP TABLE dst; |
|||
|
|||
--remove_file $MYSQLD_DATADIR/test/tmp.ibd |
|||
--remove_file $MYSQLD_DATADIR/test/tmp.cfg |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue