mariadb/extra
Marko Mäkelä 155019b96b MDEV-28994 Backup of memory-mapped log is corrupted
An interface to use memory-mapped I/O on the InnoDB redo log that
is stored in persistent memory was introduced
in commit 685d958e38 (MDEV-14425).

log_t::attach(): In mariadb-backup --backup, never attempt to
use memory-mapped I/O for reading the log file of the server.

xtrabackup_copy_logfile(): Assert !log_sys.is_pmem() and remove
the code to deal with a memory-mapped log.

This fixes a race condition scenario of the following type:
1. Backup parsed a mini-transaction from the memory-mapped buffer.
This took some time.
2. Meanwhile, the server might have overwritten this portion
of the circular log_sys.buf.
3. Backup copied the data to the output file while or after
the server had overwritten this portion of the file.
4. Backup failed to notice that a log overrun occurred.

The symptom of this was that a mariadb-backup --prepare of the
log failed. In the analyzed case, the error message was:
[ERROR] InnoDB: Missing FILE_CHECKPOINT(...)

This will also make it possible to run mariadb-backup --backup
under "rr replay".
2022-07-01 18:07:07 +03:00
..
aws_sdk MDEV-23539: aws key plugin - fails to build 2020-10-26 14:59:42 +11:00
mariabackup MDEV-28994 Backup of memory-mapped log is corrupted 2022-07-01 18:07:07 +03:00
readline Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
wolfssl MDEV-28445 fixup: Restore submodules 2022-04-30 11:48:12 +03:00
charset2html.c Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
CMakeLists.txt MDEV-22552: mytop packaging 2021-10-25 12:15:49 +02:00
comp_err.c MDEV-26221: DYNAMIC_ARRAY use size_t for sizes 2021-10-19 16:00:26 +03:00
innochecksum.cc Merge 10.7 into 10.8 2022-04-13 17:52:27 +09:00
my_print_defaults.c MDEV-26238: Remove inconsistent behaviour of --default-* options 2022-01-26 18:43:06 +01:00
mysql_waitpid.c Added 'const' to arguments in get_one_option and find_typeset() 2021-02-08 12:16:29 +02:00
mysqld_safe_helper.c mysqld_safe_help - remove warning 2017-04-30 15:06:01 +04:00
perror.c Added 'const' to arguments in get_one_option and find_typeset() 2021-02-08 12:16:29 +02:00
replace.c Merge 10.4 into 10.5 2022-07-01 14:42:02 +03:00
resolve_stack_dump.c MDEV-22189: Change error messages inside code to have mariadb instead of 2021-05-24 11:38:13 +05:30
resolveip.c Added 'const' to arguments in get_one_option and find_typeset() 2021-02-08 12:16:29 +02:00