mariadb/mysql-test/suite/encryption/t
Marko Mäkelä 2af28a363c MDEV-11782: Redefine the innodb_encrypt_log format
Write only one encryption key to the checkpoint page.
Use 4 bytes of nonce. Encrypt more of each redo log block,
only skipping the 4-byte field LOG_BLOCK_HDR_NO which the
initialization vector is derived from.

Issue notes, not warning messages for rewriting the redo log files.

recv_recovery_from_checkpoint_finish(): Do not generate any redo log,
because we must avoid that before rewriting the redo log files, or
otherwise a crash during a redo log rewrite (removing or adding
encryption) may end up making the database unrecoverable.
Instead, do these tasks in innobase_start_or_create_for_mysql().

Issue a firm "Missing MLOG_CHECKPOINT" error message. Remove some
unreachable code and duplicated error messages for log corruption.

LOG_HEADER_FORMAT_ENCRYPTED: A flag for identifying an encrypted redo
log format.

log_group_t::is_encrypted(), log_t::is_encrypted(): Determine
if the redo log is in encrypted format.

recv_find_max_checkpoint(): Interpret LOG_HEADER_FORMAT_ENCRYPTED.

srv_prepare_to_delete_redo_log_files(): Display NOTE messages about
adding or removing encryption. Do not issue warnings for redo log
resizing any more.

innobase_start_or_create_for_mysql(): Rebuild the redo logs also when
the encryption changes.

innodb_log_checksums_func_update(): Always use the CRC-32C checksum
if innodb_encrypt_log. If needed, issue a warning
that innodb_encrypt_log implies innodb_log_checksums.

log_group_write_buf(): Compute the checksum on the encrypted
block contents, so that transmission errors or incomplete blocks can be
detected without decrypting.

Rewrite most of the redo log encryption code. Only remember one
encryption key at a time (but remember up to 5 when upgrading from the
MariaDB 10.1 format.)
2017-02-15 08:07:20 +02:00
..
aria_tiny.test MDEV-8022 Assertion `rc == 0' failed in ma_encrypt on dropping an encrypted Aria table 2015-05-13 14:27:17 +02:00
create_or_replace.opt MDEV-8391: encryption.innodb-page_encryption_compression fails 2015-06-29 08:49:58 +03:00
create_or_replace.test Fix bunch of test failures and solaris build missing include. 2016-09-09 10:01:18 +03:00
debug_key_management.opt Test debug_key_management fails sporadically in buildbot. 2015-10-29 10:35:37 +02:00
debug_key_management.test Test debug_key_management fails sporadically in buildbot. 2015-10-29 10:35:37 +02:00
encrypt_and_grep.opt MDEV-8164: Server crashes in pfs_mutex_enter_func after fil_crypt_is_closing or alike 2015-05-18 13:28:13 +03:00
encrypt_and_grep.test MDEV-8817: Failing assertion: new_state->key_version != ENCRYPTION_KEY_VERSION_INVALID 2015-09-22 15:13:48 +03:00
encryption_force.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
encryption_force.test MDEV-8130 Wrong error code/message while encrypting a partitioned InnoDB table 2015-05-13 14:27:18 +02:00
filekeys-data.enc move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys-data.key MDEV-7993 file_key_management_filekey doesn't work as expected with FILE: 2015-05-13 14:27:16 +02:00
filekeys-tooshort.enc MDEV-10888: encryption.filekeys_emptyfile fails in buildbot with valgrind 2016-09-27 07:54:27 +03:00
filekeys_badtest.inc enable tests that were skipped because of have_xtradb 2016-12-29 13:23:49 +01:00
filekeys_emptyfile.opt MDEV-9613: keyfile without any keys crashes mysqld on loading file_key_management plugin 2016-03-22 22:20:33 +02:00
filekeys_emptyfile.test MDEV-9613: keyfile without any keys crashes mysqld on loading file_key_management plugin 2016-03-22 22:20:33 +02:00
filekeys_encfile.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_encfile.test move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_encfile_bad.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_encfile_bad.test move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_encfile_badfile.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_encfile_badfile.test move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_encfile_file.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_encfile_file.test move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_encfile_no.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_encfile_no.test move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_goodtest.inc enable tests that were skipped because of have_xtradb 2016-12-29 13:23:49 +01:00
filekeys_nofile.test fix the encryption.filekeys_nofile test 2015-10-10 14:19:02 +02:00
filekeys_plugin.inc misc encryption tests fixes 2015-06-27 09:40:54 +02:00
filekeys_plugin.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_plugin_exists.inc Fix test failures seen on buildbot where file_key_management plugin 2015-09-17 16:40:31 +03:00
filekeys_syntax.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_syntax.test file_key_management plugin: complain if key id 1 is not found 2015-06-02 19:00:23 +02:00
filekeys_tooshort.opt MDEV-10888: encryption.filekeys_emptyfile fails in buildbot with valgrind 2016-09-27 07:54:27 +03:00
filekeys_tooshort.test MDEV-10888: encryption.filekeys_emptyfile fails in buildbot with valgrind 2016-09-27 07:54:27 +03:00
filekeys_unencfile.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
filekeys_unencfile.test move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
innochecksum.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-bad-key-change.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-bad-key-change2.test Fix test failures seen on buildbot where file_key_management plugin 2015-09-17 16:40:31 +03:00
innodb-bad-key-change3.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-bad-key-change4.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-bad-key-change5.opt MDEV-8769: Server crash at file btr0btr.ic line 122 when defragmenting encrypted table using incorrect keys 2015-09-14 12:15:27 +03:00
innodb-bad-key-change5.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-bad-key-shutdown.test MDEV-8727: Server/InnoDB hangs on shutdown after trying to read an encrypted table with a wrong key 2015-10-01 08:20:27 +03:00
innodb-discard-import-change.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-discard-import.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-encr-threads.test InnoDB: check if scrubbing is enabled before scanning the tablespace 2015-05-15 18:12:02 +02:00
innodb-encryption-alter.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-encryption-disable.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-missing-key.opt MDEV-11004: Unable to start (Segfault or os error 2) when encryption key missing 2016-10-29 10:09:06 +03:00
innodb-missing-key.test MDEV-11004: Unable to start (Segfault or os error 2) when encryption key missing 2016-10-29 10:09:06 +03:00
innodb-page_encryption-32k.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
innodb-page_encryption-32k.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-page_encryption.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-page_encryption_compression.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-page_encryption_log_encryption.opt MDEV-8143: InnoDB: Database page corruption on disk or a failed file read 2015-05-14 11:32:24 +03:00
innodb-page_encryption_log_encryption.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb-read-only.opt MDEV-11835: InnoDB: Failing assertion: free_slot != NULL on 2017-01-19 08:19:08 +02:00
innodb-read-only.test MDEV-11835: InnoDB: Failing assertion: free_slot != NULL on 2017-01-19 08:19:08 +02:00
innodb-scrub-log.opt MDEV-11705: InnoDB: Failing assertion: (&log_sys->mutex)->is_owned() if server started with innodb-scrub-log 2017-01-03 11:22:49 +02:00
innodb-scrub-log.test MDEV-11705: InnoDB: Failing assertion: (&log_sys->mutex)->is_owned() if server started with innodb-scrub-log 2017-01-03 11:22:49 +02:00
innodb-spatial-index.opt MDEV-11974: MariaDB 10.2 encryption does not support spatial indexes 2017-02-08 09:05:15 +02:00
innodb-spatial-index.test MDEV-11974: MariaDB 10.2 encryption does not support spatial indexes 2017-02-08 09:05:15 +02:00
innodb_encrypt_log.opt MDEV-11782: Redefine the innodb_encrypt_log format 2017-02-15 08:07:20 +02:00
innodb_encrypt_log.test MDEV-11782: Redefine the innodb_encrypt_log format 2017-02-15 08:07:20 +02:00
innodb_encrypt_log_corruption.opt MDEV-11782 WIP: Clean up the code, and add a test. 2017-02-07 11:55:16 +02:00
innodb_encrypt_log_corruption.test MDEV-11782: Redefine the innodb_encrypt_log format 2017-02-15 08:07:20 +02:00
innodb_encryption-page-compression.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
innodb_encryption-page-compression.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb_encryption.opt MDEV-9010 Encryption preset file contains different configuration preset then documentation 2015-10-29 10:46:37 +01:00
innodb_encryption.test move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
innodb_encryption_discard_import.opt MDEV-8708: InnoDB temp file encryption 2015-09-08 08:38:12 +03:00
innodb_encryption_discard_import.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb_encryption_filekeys.opt MDEV-8832: Encryption meta data should not be stored when ENCRYPTED=DEFAULT and innodb-encrypt-tables=OFF 2015-09-23 17:34:36 +03:00
innodb_encryption_filekeys.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb_encryption_is.opt MDEV-9640: Add used key_id to INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION 2016-03-18 11:48:49 +02:00
innodb_encryption_is.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb_encryption_row_compressed.opt MDEV-9931: InnoDB reads first page of every .ibd file at startup 2016-09-22 16:38:24 +03:00
innodb_encryption_row_compressed.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb_encryption_tables.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
innodb_encryption_tables.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb_first_page.opt move encryption tests to a dedicate suite 2015-05-13 14:27:16 +02:00
innodb_first_page.test MDEV-8495 encryption.innodb_first_page fails sporadically in buildbot 2015-07-17 19:20:50 +03:00
innodb_lotoftables.opt MDEV-9931: InnoDB reads first page of every .ibd file at startup 2016-09-22 16:38:24 +03:00
innodb_lotoftables.test Merge 10.1 into 10.2 2017-01-09 09:47:12 +02:00
innodb_onlinealter_encryption.opt MDEV-8708: InnoDB temp file encryption 2015-09-08 08:38:12 +03:00
innodb_onlinealter_encryption.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb_page_encryption_key_change.test Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb_scrub.opt Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb_scrub.test Merge 10.1 to 10.2 2017-01-05 10:48:03 +02:00
innodb_scrub_background.opt Remove references to innodb_file_format. 2017-01-18 08:43:11 +02:00
innodb_scrub_background.test MDEV-8139 Fix scrubbing tests 2017-01-05 00:20:17 +02:00
tempfiles.test enable tests that were skipped because of have_xtradb 2016-12-29 13:23:49 +01:00