1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

MDEV-34705: Binlog-in-engine: Implement file header page

Now the first page of each binlog tablespace file is reserved as a file
header, replacing the use of extra fields in the first gtid state record of
the file. The header is primarily used during recovery, especially to get
the file LSN before which no redo should be applied to the file.

Using a dedicated page makes it possible to durably sync the file header to
disk after RESET MASTER (and at first server startup) and not have it
overwritten (and potentially corrupted) later; this guarantees that the
recovery will have at least one file header to look at to determine from
which LSN to apply redo records.

Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org>
This commit is contained in:
Kristian Nielsen
2025-04-02 10:21:08 +02:00
parent 21751e21f1
commit e1055af14f
7 changed files with 406 additions and 196 deletions

View File

@@ -57,6 +57,6 @@ EOF
--source include/wait_until_connected_again.inc
--let $binlog_file=
--let $binlog_start= 0
--let $binlog_start= 4
--source include/show_binlog_events.inc
DROP TABLE t1;