diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2017-10-18 11:54:18 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2017-10-18 11:57:38 +0300 |
commit | 3294f6c30d9f242a6ac3635272dceffdd8713301 (patch) | |
tree | ca4f71107260c987a4f0577c4a6f09eff0804b19 /storage | |
parent | 3bc094d32a360b7d51600cf11bc4ce24117ecb78 (diff) | |
parent | 59d3ba0b5d68b24b7b3339700d05c6c3a6fab13e (diff) | |
download | mariadb-git-3294f6c30d9f242a6ac3635272dceffdd8713301.tar.gz |
MDEV-14085 Merge new release of InnoDB MySQL 5.7.20 to 10.2bb-10.2-marko-5.7.20
Diffstat (limited to 'storage')
-rw-r--r-- | storage/innobase/buf/buf0rea.cc | 24 | ||||
-rw-r--r-- | storage/innobase/include/univ.i | 2 |
2 files changed, 25 insertions, 1 deletions
diff --git a/storage/innobase/buf/buf0rea.cc b/storage/innobase/buf/buf0rea.cc index f7ea768f5c1..598da3ff706 100644 --- a/storage/innobase/buf/buf0rea.cc +++ b/storage/innobase/buf/buf0rea.cc @@ -176,6 +176,17 @@ buf_read_page_low( dst = ((buf_block_t*) bpage)->frame; } + DBUG_EXECUTE_IF( + "innodb_invalid_read_after_truncate", + if (fil_space_t* space = fil_space_acquire(page_id.space())) { + if (!strcmp(space->name, "test/t1") + && page_id.page_no() == space->size - 1) { + type = 0; + sync = true; + } + fil_space_release(space); + }); + IORequest request(type | IORequest::READ); *err = fil_io( @@ -321,6 +332,19 @@ buf_read_ahead_random( that is, reside near the start of the LRU list. */ for (i = low; i < high; i++) { + DBUG_EXECUTE_IF( + "innodb_invalid_read_after_truncate", + if (fil_space_t* space = fil_space_acquire( + page_id.space())) { + bool skip = !strcmp(space->name, "test/t1"); + fil_space_release(space); + if (skip) { + high = space->size; + buf_pool_mutex_exit(buf_pool); + goto read_ahead; + } + }); + const buf_page_t* bpage = buf_page_hash_get( buf_pool, page_id_t(page_id.space(), i)); diff --git a/storage/innobase/include/univ.i b/storage/innobase/include/univ.i index e797fd7bef7..ce124f2fe11 100644 --- a/storage/innobase/include/univ.i +++ b/storage/innobase/include/univ.i @@ -41,7 +41,7 @@ Created 1/20/1994 Heikki Tuuri #define INNODB_VERSION_MAJOR 5 #define INNODB_VERSION_MINOR 7 -#define INNODB_VERSION_BUGFIX 19 +#define INNODB_VERSION_BUGFIX 20 /* The following is the InnoDB version as shown in SELECT plugin_version FROM information_schema.plugins; |