Server IP : 104.21.38.3 / Your IP : 162.158.171.12 Web Server : Apache System : Linux krdc-ubuntu-s-2vcpu-4gb-amd-blr1-01.localdomain 5.15.0-142-generic #152-Ubuntu SMP Mon May 19 10:54:31 UTC 2025 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /www/server/mysql/src/mysql-test/suite/innodb/t/ |
Upload File : |
# Test resizing the InnoDB redo log. --source include/have_innodb.inc # Embedded server does not support crashing --source include/not_embedded.inc # Avoid CrashReporter popup on Mac --source include/not_crashrep.inc # innodb-force-recovery-crash needs debug --source include/have_debug.inc if (`SELECT @@innodb_log_file_size = 1048576`) { --skip Test requires innodb_log_file_size>1M. } call mtr.add_suppression("InnoDB: Resizing redo log"); call mtr.add_suppression("InnoDB: Starting to delete and rewrite log files"); call mtr.add_suppression("InnoDB: New log files created"); call mtr.add_suppression("InnoDB: The log sequence numbers [0-9]+ and [0-9]+ in ibdata files do not match the log sequence number [0-9]+ in the ib_logfiles"); CREATE TABLE t1(a INT PRIMARY KEY) ENGINE=InnoDB; BEGIN; INSERT INTO t1 VALUES (42); let $restart_parameters = restart: --innodb-log-file-size=6M; --source include/kill_and_restart_mysqld.inc SELECT * FROM t1; INSERT INTO t1 VALUES (42); BEGIN; DELETE FROM t1; let $restart_parameters = restart: --innodb-log-files-in-group=3 --innodb-log-file-size=5M; --source include/kill_and_restart_mysqld.inc SELECT * FROM t1; INSERT INTO t1 VALUES (123); let MYSQLD_DATADIR= `select @@datadir`; let SEARCH_FILE= $MYSQLTEST_VARDIR/log/my_restart.err; let $args=--loose-console --core-file > $SEARCH_FILE 2>&1; let crash=--loose-console > $SEARCH_FILE 2>&1 --innodb-force-recovery-crash; BEGIN; DELETE FROM t1; --source include/kill_mysqld.inc --error 1 --exec $MYSQLD_CMD $args --innodb-log-group-home-dir=foo\;bar let SEARCH_PATTERN= syntax error in innodb_log_group_home_dir; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE # On Windows, DBUG_SUICIDE() does exit(3) instead of SIGKILL (128+9). --echo --innodb-force-recovery-crash=1 --error 137,3 --exec $MYSQLD_CMD $crash=1 let SEARCH_PATTERN= InnoDB: Starting an apply batch of log records; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --echo --innodb-force-recovery-crash=3 --error 137,3 --exec $MYSQLD_CMD $crash=3 let SEARCH_PATTERN= InnoDB: Starting an apply batch of log records; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --error 1,42 --exec $MYSQLD_CMD $args --innodb-read-only let SEARCH_PATTERN= InnoDB: Recovery skipped, --innodb-read-only set!; --source include/search_pattern_in_file.inc let SEARCH_PATTERN= InnoDB: Can.t initiate database recovery, running in read-only-mode; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --echo --innodb-force-recovery-crash=4 --error 137,3 --exec $MYSQLD_CMD $crash=4 let SEARCH_PATTERN= InnoDB: Starting an apply batch of log records; --source include/search_pattern_in_file.inc let SEARCH_PATTERN= InnoDB: Resizing redo log from 3\*[0-9]+ to 2\*[0-9]+ pages; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --echo --innodb-force-recovery-crash=5 --error 137,3 --exec $MYSQLD_CMD $crash=5 let SEARCH_PATTERN= InnoDB: Starting an apply batch of log records; --source include/search_pattern_in_file.inc let SEARCH_PATTERN= InnoDB: Resizing redo log from 3\*[0-9]+ to 2\*[0-9]+ pages; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --error 1,42 --exec $MYSQLD_CMD $args --innodb-read-only let SEARCH_PATTERN= InnoDB: Can.t initiate database recovery, running in read-only-mode; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --echo --innodb-force-recovery-crash=6 --error 137,3 --exec $MYSQLD_CMD $crash=6 let SEARCH_PATTERN= InnoDB: Starting an apply batch of log records; --source include/search_pattern_in_file.inc let SEARCH_PATTERN= InnoDB: Resizing redo log from 3\*[0-9]+ to 2\*[0-9]+ pages; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --echo --innodb-force-recovery-crash=7 --error 137,3 --exec $MYSQLD_CMD $crash=7 # this crashes right after deleting all log files --remove_file $SEARCH_FILE --error 1,42 --exec $MYSQLD_CMD $args --innodb-read-only let SEARCH_PATTERN= InnoDB: Cannot create log files in read-only mode; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --echo --innodb-force-recovery-crash=8 --error 137,3 --exec $MYSQLD_CMD $crash=8 let SEARCH_PATTERN= InnoDB: Setting log file .*ib_logfile[0-9]+ size to; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --echo --innodb-force-recovery-crash=9 --error 137,3 --exec $MYSQLD_CMD $crash=9 let SEARCH_PATTERN= InnoDB: Setting log file .*ib_logfile[0-9]+ size to; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE # We should have perfectly synced files here. # Rename the log files, and trigger an error in recovery. --move_file $MYSQLD_DATADIR/ib_logfile101 $MYSQLD_DATADIR/ib_logfile0 --move_file $MYSQLD_DATADIR/ib_logfile1 $MYSQLD_DATADIR/ib_logfile1_hidden --error 1,42 --exec $MYSQLD_CMD $args let SEARCH_PATTERN= InnoDB: Only one log file found; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --move_file $MYSQLD_DATADIR/ib_logfile0 $MYSQLD_DATADIR/ib_logfile101 perl; die unless open(FILE, ">$ENV{MYSQLD_DATADIR}/ib_logfile0"); print FILE "garbage"; close(FILE); EOF --error 1,42 --exec $MYSQLD_CMD $args let SEARCH_PATTERN= InnoDB: Log file .*ib_logfile0 size 7 is not a multiple of innodb_page_size; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --remove_file $MYSQLD_DATADIR/ib_logfile0 --move_file $MYSQLD_DATADIR/ib_logfile101 $MYSQLD_DATADIR/ib_logfile0 perl; die unless open(FILE, ">$ENV{MYSQLD_DATADIR}/ib_logfile1"); print FILE "junkfill" x 131072; close(FILE); EOF --error 1,42 --exec $MYSQLD_CMD $args let SEARCH_PATTERN= InnoDB: Log file .*ib_logfile1 is of different size 1048576 bytes than other log files; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --remove_file $MYSQLD_DATADIR/ib_logfile1 --move_file $MYSQLD_DATADIR/ib_logfile0 $MYSQLD_DATADIR/ib_logfile101 --move_file $MYSQLD_DATADIR/ib_logfile1_hidden $MYSQLD_DATADIR/ib_logfile1 --echo --innodb-force-recovery-crash=10 --error 137,3 --exec $MYSQLD_CMD $crash=10 let SEARCH_PATTERN= InnoDB: Setting log file .*ib_logfile[0-9]+ size to; --source include/search_pattern_in_file.inc let SEARCH_PATTERN= InnoDB: Renaming log file .*ib_logfile101 to .*ib_logfile0; --source include/search_pattern_in_file.inc --remove_file $SEARCH_FILE --source include/start_mysqld.inc SELECT * FROM t1; DROP TABLE t1;