diff options
author | Jan Lindström <jan.lindstrom@mariadb.com> | 2017-09-20 20:53:09 +0300 |
---|---|---|
committer | Jan Lindström <jan.lindstrom@mariadb.com> | 2017-09-20 20:53:09 +0300 |
commit | 4fd87a9a204a86e2c22b337ee160cf093f9c9f69 (patch) | |
tree | 5d22e3c5ed50987854c4d6325d432972df535a5a /mysql-test | |
parent | 9b998c18283c8acd4ed3d8e6df503fe861af04f0 (diff) | |
download | mariadb-git-bb-10.1-MDEV-13856.tar.gz |
MDEV-13856: Incorrect error message for ALTER TABLE t1 ENCRYPTED=YES, ALGORITHM=INPLACEbb-10.1-MDEV-13856
ha_innobase::check_if_supported_inplace_alter
Do not use ER_ALTER_OPERATION_NOT_SUPPORTED_REASON as it
expects other parameters. Use HA_ALTER_INPLACE_NOT_SUPPORTED
instead.
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/suite/encryption/r/innodb-alter-option.result | 445 | ||||
-rw-r--r-- | mysql-test/suite/encryption/t/innodb-alter-option.test | 136 |
2 files changed, 581 insertions, 0 deletions
diff --git a/mysql-test/suite/encryption/r/innodb-alter-option.result b/mysql-test/suite/encryption/r/innodb-alter-option.result new file mode 100644 index 00000000000..9d2a0e6bd47 --- /dev/null +++ b/mysql-test/suite/encryption/r/innodb-alter-option.result @@ -0,0 +1,445 @@ +SET GLOBAL innodb_file_format='Barracuda'; +CREATE TABLE t1 (pk INT PRIMARY KEY AUTO_INCREMENT, +c VARCHAR(256), coordinate POINT NOT NULL) ENCRYPTED=YES ENGINE=INNODB; +ALTER TABLE t1 FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ADD INDEX b(coordinate), FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 DROP INDEX b; +ALTER TABLE t1 ADD INDEX b(coordinate), FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 DROP INDEX b; +ALTER TABLE t1 ADD INDEX b(coordinate), ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 DROP INDEX b; +ALTER TABLE t1 ADD INDEX b(coordinate), ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ENCRYPTED=NO, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=NO +ALTER TABLE t1 ENCRYPTED=YES, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ENCRYPTED=DEFAULT, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 ENCRYPTED=YES, FORCE, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 ENCRYPTED=NO, FORCE, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 ENCRYPTED=DEFAULT, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 ENCRYPTED=YES, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ENCRYPTED=DEFAULT, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 ENCRYPTED=YES, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 ENCRYPTED=NO, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 ENCRYPTED=DEFAULT, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 ENCRYPTED=YES, ALGORITHM=COPY; +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES `ENCRYPTION_KEY_ID`=4 +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES `ENCRYPTION_KEY_ID`=4 +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, FORCE, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTED`=YES +ALTER TABLE t1 ENCRYPTED=NO, ALGORITHM=COPY; +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, FORCE, ALGORITHM=COPY; +Warnings: +Warning 140 InnoDB: Ignored ENCRYPTION_KEY_ID 4 when encryption is disabled +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, FORCE, ALGORITHM=COPY; +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, FORCE, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, FORCE, ALGORITHM=INPLACE; +ALTER TABLE t1 PAGE_COMPRESSED=1, ENCRYPTED=DEFAULT, ENCRYPTION_KEY_ID=DEFAULT, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `PAGE_COMPRESSED`=1 +ALTER TABLE t1 PAGE_COMPRESSED=DEFAULT, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 PAGE_COMPRESSED=1, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 PAGE_COMPRESSED=DEFAULT, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 PAGE_COMPRESSED=1, FORCE, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 PAGE_COMPRESSED=DEFAULT, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +ALTER TABLE t1 PAGE_COMPRESSED=1, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `PAGE_COMPRESSED`=1 +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=9, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `PAGE_COMPRESSED`=1 `PAGE_COMPRESSION_LEVEL`=9 +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=DEFAULT, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `PAGE_COMPRESSED`=1 +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=9, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `PAGE_COMPRESSED`=1 `PAGE_COMPRESSION_LEVEL`=9 +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=DEFAULT, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `PAGE_COMPRESSED`=1 +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=9, FORCE, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `PAGE_COMPRESSED`=1 +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=DEFAULT, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `PAGE_COMPRESSED`=1 +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=9, ALGORITHM=INPLACE; +ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY. +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `PAGE_COMPRESSED`=1 +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=DEFAULT, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `pk` int(11) NOT NULL AUTO_INCREMENT, + `c` varchar(256) DEFAULT NULL, + `coordinate` point NOT NULL, + PRIMARY KEY (`pk`), + KEY `b` (`coordinate`(25)) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `PAGE_COMPRESSED`=1 +DROP TABLE t1; +SET GLOBAL innodb_file_format=DEFAULT; diff --git a/mysql-test/suite/encryption/t/innodb-alter-option.test b/mysql-test/suite/encryption/t/innodb-alter-option.test new file mode 100644 index 00000000000..80bb185289f --- /dev/null +++ b/mysql-test/suite/encryption/t/innodb-alter-option.test @@ -0,0 +1,136 @@ +--source include/have_innodb.inc +--source include/have_file_key_management_plugin.inc + +--disable_warnings +SET GLOBAL innodb_file_format='Barracuda'; +--enable_warnings + +CREATE TABLE t1 (pk INT PRIMARY KEY AUTO_INCREMENT, +c VARCHAR(256), coordinate POINT NOT NULL) ENCRYPTED=YES ENGINE=INNODB; +ALTER TABLE t1 FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ADD INDEX b(coordinate), FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 DROP INDEX b; +ALTER TABLE t1 ADD INDEX b(coordinate), FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 DROP INDEX b; +ALTER TABLE t1 ADD INDEX b(coordinate), ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 DROP INDEX b; +ALTER TABLE t1 ADD INDEX b(coordinate), ALGORITHM=COPY; +SHOW CREATE TABLE t1; +# +# ENCRYPTED +# +ALTER TABLE t1 ENCRYPTED=NO, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTED=YES, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTED=DEFAULT, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 ENCRYPTED=YES, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 ENCRYPTED=NO, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTED=DEFAULT, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTED=YES, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTED=DEFAULT, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 ENCRYPTED=YES, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 ENCRYPTED=NO, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTED=DEFAULT, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +# +# ENCRYPTION_KEY_ID +# +ALTER TABLE t1 ENCRYPTED=YES, ALGORITHM=COPY; +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 ENCRYPTED=NO, ALGORITHM=COPY; +# +# ENCRYPTION KEY ID ignored +# +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, FORCE, ALGORITHM=COPY; +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, FORCE, ALGORITHM=COPY; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 ENCRYPTION_KEY_ID=4, FORCE, ALGORITHM=INPLACE; +ALTER TABLE t1 ENCRYPTION_KEY_ID=DEFAULT, FORCE, ALGORITHM=INPLACE; +# +# PAGE_COMPRESSED +# +ALTER TABLE t1 PAGE_COMPRESSED=1, ENCRYPTED=DEFAULT, ENCRYPTION_KEY_ID=DEFAULT, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 PAGE_COMPRESSED=DEFAULT, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 PAGE_COMPRESSED=1, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 PAGE_COMPRESSED=DEFAULT, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 PAGE_COMPRESSED=1, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 PAGE_COMPRESSED=DEFAULT, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +# +# PAGE_COMPRESSION_LEVEL +# +ALTER TABLE t1 PAGE_COMPRESSED=1, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=9, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=DEFAULT, FORCE, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=9, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=DEFAULT, ALGORITHM=COPY; +SHOW CREATE TABLE t1; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=9, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=DEFAULT, FORCE, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +--error ER_ALTER_OPERATION_NOT_SUPPORTED +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=9, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; +ALTER TABLE t1 PAGE_COMPRESSION_LEVEL=DEFAULT, ALGORITHM=INPLACE; +SHOW CREATE TABLE t1; + +DROP TABLE t1; + +--disable_result_log +--disable_warnings +SET GLOBAL innodb_file_format=DEFAULT; +--enable_warnings +--enable_result_log |