Hi Otto,

On Thu, Jun 19, 2025 at 2:51 PM Otto Kekäläinen wrote:
> The most frequent thing I see people complain about is not new to
> 11.8, but I think introduced in 10.4 with InnoDB refusing to start if
> crash recovery is needed for a database of an earlier major version.

A format version identifier was introduced in the InnoDB write-ahead
log (ib_logfile0) in MySQL 5.7.9 and in MariaDB 10.2. The format was
slightly changed in MariaDB 10.3 and 10.4. In 10.5,
https://jira.mariadb.org/browse/MDEV-12353 was a major change, which
involved a full rewrite of the log record logic. There was another
major rewrite in the MariaDB Server 10.8 short-time release
(https://jira.mariadb.org/browse/MDEV-14425). I don't think that there
is any compelling need to revise the format of ib_logfile0 further,
other than the format of innodb_encrypt_log=ON (see
https://jira.mariadb.org/browse/MDEV-36024). That format change should
be possible to implement while preserving the ability to recover from
old files.

Apart from the InnoDB log file format, there has been one change to
the data files. The corruption-prone change buffer, which had long
been disabled by default, was finally removed in MariaDB Server 11.0
as part of https://jira.mariadb.org/browse/MDEV-29694. Related to
that, there is an open issue
https://jira.mariadb.org/browse/MDEV-36556 which we have not been able
to reproduce internally.

> To help DBAs ensure they have a clean shutdown before doing a major
> version upgrade, I was wondering what are the best ways to confirm a
> clean shutdown by checking the MariaDB logs or files in
> /var/log/mysql? Specifically, what log entries or patterns in the
> MariaDB logs indicate a clean shutdown?

I think that the best way might be to check the contents of the
ib_logfile0, similar to how recv_sys_t::find_checkpoint() does it.
That logic could rather easily be copied to a separate tool, possibly
written in a scripting language.

Marko
-- 
Marko Mäkelä, Lead Developer InnoDB
MariaDB plc
_______________________________________________
developers mailing list -- developers@lists.mariadb.org
To unsubscribe send an email to developers-le...@lists.mariadb.org

Reply via email to