mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-11799 InnoDB can abort if the doublewrite buffer
contains a bad and a good copy Clean up the InnoDB doublewrite buffer code. buf_dblwr_init_or_load_pages(): Do not add empty pages to the buffer. buf_dblwr_process(): Do consider changes to pages that are all zero. Do not abort when finding a corrupted copy of a page in the doublewrite buffer, because there could be multiple copies in the doublewrite buffer, and only one of them needs to be good.
This commit is contained in:
@ -4,10 +4,6 @@
|
||||
# Temporary tablename will be unique. This makes sure that future
|
||||
# in-place ALTERs of the same table will not be blocked due to
|
||||
# temporary tablename.
|
||||
call mtr.add_suppression("InnoDB: Warning: database page corruption or a failed
|
||||
");
|
||||
call mtr.add_suppression("InnoDB: file read of space .* page .*");
|
||||
call mtr.add_suppression("InnoDB: Trying to recover it from the doublewrite buffer.");
|
||||
# Crash the server in ha_innobase::commit_inplace_alter_table()
|
||||
CREATE TABLE t1 (f1 INT NOT NULL, f2 INT NOT NULL) ENGINE=innodb;
|
||||
SET debug='d,innodb_alter_commit_crash_before_commit';
|
||||
|
Reference in New Issue
Block a user