On Tue, Feb 7, 2017 at 3:56 PM, jan <jan.lindstrom@mariadb.com> wrote:
revision-id: 90010cb4cbcc538181f043dbeccd776776bdd5a4 (mariadb-10.2.3-171-g90010cb4cbc) parent(s): 92bbf4ad0477e09bcc86907696cd114ef42e6914 author: Jan Lindström committer: Jan Lindström timestamp: 2017-02-07 15:55:01 +0200 message:
MDEV-11974: MariaDB 10.2 encryption does not support spatial indexes
Add a short explanation why we cannot support encrypted spatial indexes.
fil0crypt.cc: Do not encrypt page if page type is FIL_PAGE_RTREE (this is required for background encryption innodb-encrypt-tables=ON)
ha_innodb.cc: check_table_options() Do not allow creating table with ENCRYPTED=YES if table contains spatial index.
Instead of file names, please use the function names in the commit comment.
+# +# Index creation +# +CREATE TABLE t1 (pk INT PRIMARY KEY AUTO_INCREMENT, +c VARCHAR(256), coordinate POINT NOT NULL) ENCRYPTED=YES ENGINE=INNODB; +--replace_regex /#sql-[0-9a-f_]*`/#sql-temporary`/ +--error ER_CANT_CREATE_TABLE +CREATE SPATIAL INDEX b on t1(coordinate); +--replace_regex /#sql-[0-9a-f_]*`/#sql-temporary`/ +--error ER_CANT_CREATE_TABLE +ALTER TABLE t1 ADD SPATIAL INDEX b(coordinate); +DROP TABLE t1;
Test this also with default encryption.
+--echo # Wait max 10 min for key encryption threads to encrypt all space +let $cnt=600; +while ($cnt) +{ + let $success=`SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0`;
Use --let $wait_timeout=600 --let $wait_condition= SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 --source include/wait_condition.inc
+DROP TABLE t1, t2; \ No newline at end of file
Add the missing newline to the end of the .test file. Please demonstrate in some way that page compression actually works with SPATIAL INDEX. Can you for example run --suite=innodb_gis with some --mysqld=--innodb… option that will cause all tables to be compressed by default? Marko -- DON’T MISS M|17 April 11 - 12, 2017 The Conrad Hotel New York City https://m17.mariadb.com/ Marko Mäkelä, Lead Developer InnoDB MariaDB Corporation