mariadb/mysql-test/suite/encryption/r/innochecksum,debug.rdiff
Marko Mäkelä e0e096faaa MDEV-29982 Improve the InnoDB log overwrite error message
The InnoDB write-ahead log ib_logfile0 is of fixed size,
specified by innodb_log_file_size. If the tail of the log
manages to overwrite the head (latest checkpoint) of the log,
crash recovery will be broken.

Let us clarify the messages about this, including adding
a message on the completion of a log checkpoint that notes
that the dangerous situation is over.

To reproduce the dangerous scenario, we will introduce the
debug injection label ib_log_checkpoint_avoid_hard, which will
avoid log checkpoints even harder than the previous
ib_log_checkpoint_avoid.

log_t::overwrite_warned: The first known dangerous log sequence number.
Set in log_close() and cleared in log_write_checkpoint_info(),
which will output a "Crash recovery was broken" message.
2022-11-14 12:18:03 +02:00

10 lines
480 B
Text

@@ -30,6 +30,9 @@
# Space ID mismatch
# Restore the original tables
# Corrupt FIL_DATA+10 (data)
+# FOUND 1 is expected for both.
+FOUND 1 /InnoDB: Crash recovery is broken due to insufficient innodb_log_file_size; last checkpoint LSN=\d+, current LSN=\d+\. Shutdown is in progress\..*InnoDB: Crash recovery was broken.*/ in mysqld.1.err
+FOUND 1 /InnoDB: Crash recovery was broken/ in mysqld.1.err
# Run innochecksum on t2
# Run innochecksum on t3
# Run innochecksum on t6