From bae0844f6575767ee9ab730835a12779f13da685 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Fri, 7 Jul 2017 00:55:01 +0300 Subject: Introduce a new InnoDB redo log format for MariaDB 10.3.1 The redo log format will be changed by MDEV-12288, and it could be changed further during MariaDB 10.3 development. We will allow startup from a clean redo log from any earlier InnoDB version (up to MySQL 5.7 or MariaDB 10.3), but we will refuse to do crash recovery from older-format redo logs. recv_log_format_0_recover(): Remove a reference to MySQL documentation, which may be misleading when it comes to MariaDB. recv_log_recover_10_2(): Check if a MariaDB 10.2.2/MySQL 5.7.9 redo log is clean. recv_find_max_checkpoint(): Invoke recv_log_recover_10_2() if the redo log is in the MariaDB 10.2.2 or MySQL 5.7.9 format. --- storage/innobase/include/log0log.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'storage/innobase/include/log0log.h') diff --git a/storage/innobase/include/log0log.h b/storage/innobase/include/log0log.h index 543302c52f0..6a13d1d9640 100644 --- a/storage/innobase/include/log0log.h +++ b/storage/innobase/include/log0log.h @@ -510,9 +510,13 @@ or the MySQL version that created the redo log file. */ IB_TO_STR(MYSQL_VERSION_MINOR) "." \ IB_TO_STR(MYSQL_VERSION_PATCH) +/** The original (not version-tagged) InnoDB redo log format */ +#define LOG_HEADER_FORMAT_3_23 0 +/** The MySQL 5.7.9/MariaDB 10.2.2 log format */ +#define LOG_HEADER_FORMAT_10_2 1 /** The redo log format identifier corresponding to the current format version. Stored in LOG_HEADER_FORMAT. */ -#define LOG_HEADER_FORMAT_CURRENT 1 +#define LOG_HEADER_FORMAT_CURRENT 103 /** Encrypted MariaDB redo log */ #define LOG_HEADER_FORMAT_ENCRYPTED (1U<<31) -- cgit v1.2.1