diff --git a/storage/innobase/buf/buf0buf.cc b/storage/innobase/buf/buf0buf.cc index 2f40ea28e0cd5..2923c6d47906a 100644 --- a/storage/innobase/buf/buf0buf.cc +++ b/storage/innobase/buf/buf0buf.cc @@ -3324,7 +3324,8 @@ buf_page_get_low( buf_flush_lists(ULINT_UNDEFINED, LSN_MAX); buf_flush_wait_batch_end_acquiring_mutex(false); - if (!fix_block->page.oldest_modification()) { + if (fix_block->page.buf_fix_count() == 1 + && !fix_block->page.oldest_modification()) { goto re_evict; }