summaryrefslogtreecommitdiff
path: root/storage/innobase/buf
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2020-05-15 17:55:01 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2020-05-15 17:55:01 +0300
commit6a6bcc53b8767dfbb4dc86bad3e90a276c55f605 (patch)
tree04116d0e438cfcf3a3b6a7557d5ec8c570255db6 /storage/innobase/buf
parent3eadb135fd7b7e2d40fd6b9a819ac3245043f781 (diff)
parentff66d65a096ec02dda1ab449d84a40361551085c (diff)
downloadmariadb-git-6a6bcc53b8767dfbb4dc86bad3e90a276c55f605.tar.gz
Merge 10.2 into 10.3
Diffstat (limited to 'storage/innobase/buf')
-rw-r--r--storage/innobase/buf/buf0buf.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/storage/innobase/buf/buf0buf.cc b/storage/innobase/buf/buf0buf.cc
index 162f297de5f..3a0162a395a 100644
--- a/storage/innobase/buf/buf0buf.cc
+++ b/storage/innobase/buf/buf0buf.cc
@@ -6109,9 +6109,8 @@ buf_page_io_complete(buf_page_t* bpage, bool dblwr, bool evict)
err = buf_page_check_corrupt(bpage, space);
-database_corrupted:
-
if (err != DB_SUCCESS) {
+database_corrupted:
/* Not a real corruption if it was triggered by
error injection */
DBUG_EXECUTE_IF(
@@ -6128,6 +6127,11 @@ database_corrupted:
goto page_not_corrupt;
);
+ if (uncompressed && bpage->zip.data) {
+ memset(reinterpret_cast<buf_block_t*>(bpage)
+ ->frame, 0, srv_page_size);
+ }
+
if (err == DB_PAGE_CORRUPTED) {
ib::error()
<< "Database page corruption on disk"