mirror of
https://github.com/MariaDB/server.git
synced 2025-01-15 19:42:28 +01:00
b249a059da
In mariadb-backup --backup, we only have to invoke the undo_space_trunc and log_file_op callbacks as well as validate the mini-transaction checksums. There is absolutely no need to access recv_sys.pages or recv_spaces, or to allocate a decrypt_buf in case of innodb_encrypt_log=ON. This is what the new mode recv_sys_t::store::BACKUP will do. In the skip_the_rest: loop, the main thing is to process all FILE_ records until the end of the log is reached. Additionally, we must process INIT_PAGE and FREE_PAGE records in the same way as they would be during storing == YES. This was measured to reduce the CPU time between the messages "InnoDB: Multi-batch recovery needed at LSN" and "InnoDB: End of log at LSN" by some 20%. recv_sys_t::store: A ternary enumeration that specifies how records should be stored: NO, BACKUP, or YES. recv_sys_t::parse(), recv_sys_t::parse_mtr(), recv_sys_t::parse_pmem(): Replace template<bool store> with template<store storing>. store_freed_or_init_rec(): Simplify some logic. We can look up also the system tablespace. Reviewed by: Debarun Banerjee |
||
---|---|---|
.. | ||
aws_sdk | ||
mariabackup | ||
readline | ||
wolfssl | ||
charset2html.c | ||
CMakeLists.txt | ||
comp_err.c | ||
innochecksum.cc | ||
my_print_defaults.c | ||
mysql_waitpid.c | ||
mysqld_safe_helper.c | ||
perror.c | ||
replace.c | ||
resolve_stack_dump.c | ||
resolveip.c |