mirror of
https://github.com/MariaDB/server.git
synced 2025-11-27 05:41:41 +03:00
Now there can be only one log file instead of several which
logically work as a single file.
Possible names of redo log files: ib_logfile0,
ib_logfile101 (for just created one)
innodb_log_fiels_in_group: value of this variable is not used
by InnoDB. Possible values are still 1..100, to not break upgrade
LOG_FILE_NAME: add constant of value "ib_logfile0"
LOG_FILE_NAME_PREFIX: add constant of value "ib_logfile"
get_log_file_path(): convenience function that returns full
path of a redo log file
SRV_N_LOG_FILES_MAX: removed
srv_n_log_files: we can't remove this for compatibility reasons,
but now server doesn't use this variable
log_sys_t::file::fd: now just one, not std::vector
log_sys_t::log_capacity: removed word 'group'
find_and_check_log_file(): part of logic from huge srv_start()
moved here
recv_sys_t::files: file descriptors of redo log files.
There can be several of those in case we're upgrading
from older MariaDB version.
recv_sys_t::remove_extra_log_files: whether to remove
ib_logfile{1,2,3...} after successfull upgrade.
recv_sys_t::read(): open if needed and read from one
of several log files
recv_sys_t::files_size(): open if needed and return files count
redo_file_sizes_are_correct(): check that redo log files
sizes are equal. Just to log an error for a user.
Corresponding check was moved from srv0start.cc
namespace deprecated: put all deprecated variables here to
prevent usage of it by us, developers
51 lines
1.8 KiB
Plaintext
51 lines
1.8 KiB
Plaintext
--source include/have_innodb.inc
|
|
# Embedded server does not support restarting
|
|
--source include/not_embedded.inc
|
|
--source include/have_debug.inc
|
|
|
|
--echo #
|
|
--echo # Bug#19685095 DO NOT CARE ABOUT UNRESOLVED MLOG_FILE_NAME
|
|
--echo # IF THERE ARE NO OPERATIONS TO APPLY
|
|
--echo #
|
|
|
|
SET GLOBAL DEBUG_DBUG='+d,fil_names_write_bogus';
|
|
--disable_query_log
|
|
call mtr.add_suppression("InnoDB: Plugin initialization aborted");
|
|
call mtr.add_suppression("Plugin 'InnoDB' init function returned error");
|
|
call mtr.add_suppression("Plugin 'InnoDB' registration as a STORAGE ENGINE failed");
|
|
FLUSH TABLES;
|
|
--enable_query_log
|
|
|
|
--let $change=`SELECT if(@@innodb_log_file_size = 4194304, 8388608, 4194304)`
|
|
--let $resize= --innodb-log-file-size=$change
|
|
|
|
--source include/no_checkpoint_start.inc
|
|
|
|
CREATE TABLE t1(a INT PRIMARY KEY) ENGINE=InnoDB;
|
|
|
|
--let CLEANUP_IF_CHECKPOINT=DROP TABLE t1;
|
|
--source include/no_checkpoint_end.inc
|
|
|
|
--let $restart_parameters= --debug=d,innodb_log_abort_1 $resize
|
|
--source include/start_mysqld.inc
|
|
--error ER_UNKNOWN_STORAGE_ENGINE
|
|
SELECT * FROM t1;
|
|
|
|
--let SEARCH_FILE = $MYSQLTEST_VARDIR/log/mysqld.1.err
|
|
--let SEARCH_PATTERN = InnoDB: Tablespace 4294967280 was not found at .*, but there were no modifications either
|
|
--source include/search_pattern_in_file.inc
|
|
|
|
--let $restart_parameters= --debug=d,innodb_log_abort_3,ib_log $resize
|
|
--source include/restart_mysqld.inc
|
|
--error ER_UNKNOWN_STORAGE_ENGINE
|
|
SELECT * FROM t1;
|
|
--let SEARCH_PATTERN= srv_prepare_to_delete_redo_log_file: ib_log: FILE_CHECKPOINT.* written
|
|
--source include/search_pattern_in_file.inc
|
|
|
|
--let $restart_parameters=
|
|
--source include/restart_mysqld.inc
|
|
# Initiate shutdown in order to issue a redo log checkpoint and to discard
|
|
# the redo log record that was emitted due to '+d,fil_names_write_bogus'.
|
|
--source include/restart_mysqld.inc
|
|
DROP TABLE t1;
|