[MDEV-17433] Allow InnoDB start up with empty ib_logfile0 from mariabackup --prepare Created: 2018-10-11  Updated: 2018-10-11  Resolved: 2018-10-11

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - InnoDB
Affects Version/s: 10.2.10, 10.3.3
Fix Version/s: 10.3.11, 10.2.19

Type: Bug Priority: Major
Reporter: Marko Mäkelä Assignee: Marko Mäkelä
Resolution: Fixed Votes: 0
Labels: backup

Issue Links:
Problem/Incident
is caused by MDEV-13311 Presence of old logs in 10.2.7 will c... Closed

 Description   

A prepared backup from Mariabackup 10.2 does not really need to contain a redo log file, because all redo log will have been applied to the data files.

When the user copies a prepared backup to a data directory (overwriting existing files), it could happen that the data directory already contained redo log files from the past. mariabackup --copy-back) would delete the old redo log files, but a user’s own copying script might not do that. To prevent corruption caused by mixing an old redo log file with data files from a backup, in MDEV-13311 Mariabackup would create a zero-length ib_logfile0 that would prevent startup.

Actually, there is no need to prevent InnoDB from starting up when a single zero-length file ib_logfile0 is present. Only if there exist multiple data files of different lengths, then we should refuse to start up. A single zero-length ib_logfile0 should be treated just like a missing log file: create new log files according to the configuration.


Generated at Thu Feb 08 08:36:26 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.