diff options
author | Kristian Nielsen <knielsen@knielsen-hq.org> | 2014-11-25 14:19:11 +0100 |
---|---|---|
committer | Kristian Nielsen <knielsen@knielsen-hq.org> | 2014-11-25 14:19:11 +0100 |
commit | e79b7ca966040d5da910e823e98841efd7c3556b (patch) | |
tree | 99e0af26d8454e50b372258ad25d62b1cddb185c | |
parent | b79685902d95df2c98544e8171b92cb09417328e (diff) | |
download | mariadb-git-e79b7ca966040d5da910e823e98841efd7c3556b.tar.gz |
MDEV-7179: rpl.rpl_gtid_crash failed in buildbot with Warning: database page corruption or a failed
I saw two test failures in rpl.rpl_gtid_crash where we get this in the error
log:
141123 12:47:54 [Note] InnoDB: Restoring possible half-written data pages
141123 12:47:54 [Note] InnoDB: from the doublewrite buffer...
InnoDB: Warning: database page corruption or a failed
InnoDB: file read of space 6 page 3.
InnoDB: Trying to recover it from the doublewrite buffer.
141123 12:47:54 [Note] InnoDB: Recovered the page from the doublewrite buffer.
This test case deliberately crashes the server, and if this crash happens
right in the middle of writing a buffer pool page to disk, it is not
unexpected that we can get a half-written page. The page is recovered
correctly from the doublewrite buffer.
So this patch adds a suppression for this warning in the error log for this
test case.
-rw-r--r-- | mysql-test/suite/rpl/r/rpl_gtid_crash.result | 1 | ||||
-rw-r--r-- | mysql-test/suite/rpl/t/rpl_gtid_crash.test | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/mysql-test/suite/rpl/r/rpl_gtid_crash.result b/mysql-test/suite/rpl/r/rpl_gtid_crash.result index bbe1dfc6c5f..75bd9d0cbb1 100644 --- a/mysql-test/suite/rpl/r/rpl_gtid_crash.result +++ b/mysql-test/suite/rpl/r/rpl_gtid_crash.result @@ -3,6 +3,7 @@ include/rpl_init.inc [topology=1->2] call mtr.add_suppression("Checking table:"); call mtr.add_suppression("client is using or hasn't closed the table properly"); call mtr.add_suppression("Table .* is marked as crashed and should be repaired"); +call mtr.add_suppression("InnoDB: Warning: database page corruption or a failed"); flush tables; ALTER TABLE mysql.gtid_slave_pos ENGINE=InnoDB; CREATE TABLE t1 (a INT PRIMARY KEY, b INT) ENGINE=InnoDB; diff --git a/mysql-test/suite/rpl/t/rpl_gtid_crash.test b/mysql-test/suite/rpl/t/rpl_gtid_crash.test index fed9b8256db..a6d07ed69f0 100644 --- a/mysql-test/suite/rpl/t/rpl_gtid_crash.test +++ b/mysql-test/suite/rpl/t/rpl_gtid_crash.test @@ -12,6 +12,11 @@ call mtr.add_suppression("Checking table:"); call mtr.add_suppression("client is using or hasn't closed the table properly"); call mtr.add_suppression("Table .* is marked as crashed and should be repaired"); +# We have seen this warning a couple of times in Buildbot. Since we crash the +# server deliberately, it seems possible that we could in rare cases crash in +# the middle of a page write. The page is recovered from the doublewrite +# buffer ("[Note] InnoDB: Recovered the page from the doublewrite buffer."). +call mtr.add_suppression("InnoDB: Warning: database page corruption or a failed"); flush tables; ALTER TABLE mysql.gtid_slave_pos ENGINE=InnoDB; |