[MDEV-29429] "free" innodb pages from dropped table/index/(deleted?)/table rebuild Created: 2022-09-01  Updated: 2023-01-04

Status: Open
Project: MariaDB Server
Component/s: Storage Engine - InnoDB
Fix Version/s: None

Type: Task Priority: Minor
Reporter: Daniel Black Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: energy

Issue Links:
Relates
relates to MDEV-25341 innodb buffer pool soft decommit of m... Closed

 Description   

From previous, Evict all pages that became useless after DROP TABLE or a table rebuild.

Currently they exist in the innodb buffer pool and will be evicted once their LRU drops as they won't exist again.

To be memory efficient we should `set_os_unused()` to allow the OS to reclaim these memory if required.

I don't think we want to do the synchronously otherwise the single query performance drops. So maybe this is some additional thing that happens in the purge thread.



 Comments   
Comment by Marko Mäkelä [ 2023-01-04 ]

It could make sense to have the dedicated buf_flush_page_cleaner() thread evict all pages from the buf_pool.LRU list that are associated with a dropped tablespace or a freed page in an existing tablespace.

Generated at Thu Feb 08 10:08:31 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.