mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 04:53:01 +01:00
Bug#16859867 INNODB_BUG14529666 FAILS SPORADICALLY IN VALGRIND
i_s_innodb_buffer_page_get_info(): Do not read the buffer block frame contents of read-fixed blocks, because it may be invalid or uninitialized. When we are going to decompress or read a block, we will put it into buf_pool->page_hash and buf_pool->LRU, read-fix the block and release the mutexes for the duration of the reading or decompression. rb#2500 approved by Jimmy Yang
This commit is contained in:
parent
8cfe636524
commit
90f3f080af
1 changed files with 10 additions and 0 deletions
|
@ -2890,6 +2890,16 @@ i_s_innodb_buffer_page_get_info(
|
|||
|
||||
page_info->freed_page_clock = bpage->freed_page_clock;
|
||||
|
||||
switch (buf_page_get_io_fix(bpage)) {
|
||||
case BUF_IO_NONE:
|
||||
case BUF_IO_WRITE:
|
||||
case BUF_IO_PIN:
|
||||
break;
|
||||
case BUF_IO_READ:
|
||||
page_info->page_type = I_S_PAGE_TYPE_UNKNOWN;
|
||||
return;
|
||||
}
|
||||
|
||||
if (page_info->page_state == BUF_BLOCK_FILE_PAGE) {
|
||||
const buf_block_t*block;
|
||||
|
||||
|
|
Loading…
Reference in a new issue