mirror of
https://github.com/MariaDB/server.git
synced 2025-02-26 07:13:09 +01:00
MDEV-14180 fixup: Avoid unnecessary dirtying of pages
fil_crypt_rotate_page(): If a page is already marked as dirty, do not move it in buf_pool.flush_list. Actual re-encryption will happen in buf_flush_page(), and moving the page in buf_pool.flush_list may only postpone the operation.
This commit is contained in:
parent
4dfec8b230
commit
09249eb9bd
1 changed files with 3 additions and 0 deletions
|
@ -1820,6 +1820,9 @@ fil_crypt_rotate_page(
|
||||||
if (block->page.status == buf_page_t::FREED) {
|
if (block->page.status == buf_page_t::FREED) {
|
||||||
/* Do not modify freed pages to avoid an assertion
|
/* Do not modify freed pages to avoid an assertion
|
||||||
failure on recovery.*/
|
failure on recovery.*/
|
||||||
|
} else if (block->page.oldest_modification()) {
|
||||||
|
/* Do not unnecessarily touch pages that are
|
||||||
|
already dirty. */
|
||||||
} else if (space->is_stopping()) {
|
} else if (space->is_stopping()) {
|
||||||
/* The tablespace is closing (in DROP TABLE or
|
/* The tablespace is closing (in DROP TABLE or
|
||||||
TRUNCATE TABLE or similar): avoid further access */
|
TRUNCATE TABLE or similar): avoid further access */
|
||||||
|
|
Loading…
Add table
Reference in a new issue