← Back to team overview

maria-developers team mailing list archive

Re: [Commits] 2c9bb42: MDEV-11432 Change the informational redo log format tag to "MariaDB 10.2.3"

 

Hi,

ok to push.

R: Jan

On Thu, Dec 1, 2016 at 8:36 AM, <marko.makela@xxxxxxxxxxx> wrote:

> revision-id: 2c9bb42d901fc4f48f4884e4a85af74eae6d0929
> (mariadb-10.2.2-91-g2c9bb42)
> parent(s): dc9f919f27fccfeb0de3ab392f33bc5efdfd59a0
> author: Marko Mäkelä
> committer: Marko Mäkelä
> timestamp: 2016-12-01 08:28:59 +0200
> message:
>
> MDEV-11432 Change the informational redo log format tag to "MariaDB 10.2.3"
>
> MariaDB 10.2 incorporates MySQL 5.7. MySQL 5.7.9 (the first GA release
> of the series) introduced an informational field to the InnoDB redo log
> header, which identifies the server version where the redo log files
> were created (initialized, resized or updated), in
> WL#8845: InnoDB: Redo log format version identifier.
>
> The informational message would be displayed to the user, for example
> if someone tries to start up MySQL 8.0 after killing a MariaDB 10.2 server.
> In the current MariaDB 10.2 source code, the identifier string would
> misleadingly say "MySQL 5.7.14" (using the hard-coded version number in
> univ.i) instead of "MariaDB 10.2.3" (using the contents of the VERSION
> file, the build system copies to config.h and my_config.h).
>
> This is only a cosmetic change. The compatibility check is based on a
> numeric identifier.
>
> We should probably also change the numeric identifier and some logic
> around it. MariaDB 10.2 should refuse to recover from a crashed MySQL 5.7
> instance, because the redo log might contain references to shared
> tablespaces,
> which are not supported by MariaDB 10.2. Also, when MariaDB 10.2 creates
> an encrypted redo log, there should be a redo log format version tag that
> will prevent MySQL 5.7 or 8.0 from starting up.
>
> ---
>  storage/innobase/include/log0log.h | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/storage/innobase/include/log0log.h
> b/storage/innobase/include/log0log.h
> index c1f2570..caa067c 100644
> --- a/storage/innobase/include/log0log.h
> +++ b/storage/innobase/include/log0log.h
> @@ -555,7 +555,11 @@ or the MySQL version that created the redo log file.
> */
>  /** End of the log file creator field. */
>  #define LOG_HEADER_CREATOR_END (LOG_HEADER_CREATOR + 32)
>  /** Contents of the LOG_HEADER_CREATOR field */
> -#define LOG_HEADER_CREATOR_CURRENT     "MySQL " INNODB_VERSION_STR
> +#define LOG_HEADER_CREATOR_CURRENT             \
> +       "MariaDB "                              \
> +       IB_TO_STR(MYSQL_VERSION_MAJOR) "."      \
> +       IB_TO_STR(MYSQL_VERSION_MINOR) "."      \
> +       IB_TO_STR(MYSQL_VERSION_PATCH)
>
>  /** The redo log format identifier corresponding to the current format
> version.
>  Stored in LOG_HEADER_FORMAT. */
> _______________________________________________
> commits mailing list
> commits@xxxxxxxxxxx
> https://lists.askmonty.org/cgi-bin/mailman/listinfo/commits