Server activity check fixes for page cleaner thread
The page cleaner performs LRU and flush list flushing if it considers the server to be active, that is, srv_check_
This has two problems:
1) Cleaner performs LRU flushing only if it considers server to be active. If the server is not considered to be active, but there is e.g. purge working, it will exhaust free lists and will have to resort to single page flushes. (bug 1234562)
2) Likewise flush list flushing happens at I/O capacity if server is considered to be idle, completely disregarding that background activity already may be using I/O, thus flush list flushing should be throttled. The following background activities caused buffer pool reads and writes, but were not bumping server activity: purge coordinator and workers, background ibuf merge.
Thus:
1) Perform LRU flushing unconditionally in the cleaner.
2) Bump server activity in purge and background ibuf merge.
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- High
- Drafter:
- Laurynas Biveinis
- Direction:
- Approved
- Assignee:
- Laurynas Biveinis
- Definition:
- Approved
- Series goal:
- Accepted for 5.6
- Implementation:
- Implemented
- Milestone target:
- 5.6.13-61.0
- Started by
- Laurynas Biveinis
- Completed by
- Laurynas Biveinis
Related branches
Related bugs
Bug #1234562: Page cleaner should perform LRU flushing regardless of server activity | Fix Released |
Sprints
Whiteboard
Work Items
Dependency tree
* Blueprints in grey have been implemented.