Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
10.5.7, 10.6.0
Description
In buf_flush_page_cleaner(), we may fail to advance the log checkpoint. I suppose that we may end up with an empty buf_pool.flush_list and a very old checkpoint age if the last page was written out by LRU eviction, or something like that.
This was detected by hangs of the tests innodb_gis.rtree_compress and innodb.undo_truncate in the bb-10.6-MDEV-26356 branch. The reason of the failure is that with MDEV-26356, we would skip purge altogether if the redo log capacity has been reached.
Failure to advance the checkpoint will cause unnecessary extra work on crash recovery or in backup. I suppose that this mostly affects an idle server.
Attachments
Issue Links
- blocks
-
MDEV-26356 Performance regression after dict_sys.mutex removal
- Closed
- duplicates
-
MDEV-26860 MariaDB 10.5 does not do idle checkpoint (regression)
- Closed
- relates to
-
MDEV-26631 Race condition in the test innodb.doublewrite
- Closed
-
MDEV-30000 make mariadb-backup to force an innodb checkpoint
- Open