[MDEV-32339] decreasing innodb_buffer_pool_size at runtime does not release memory Created: 2023-10-02 Updated: 2023-10-12 |
|
| Status: | Open |
| Project: | MariaDB Server |
| Component/s: | Server |
| Affects Version/s: | 10.5.21 |
| Fix Version/s: | 10.5 |
| Type: | Bug | Priority: | Major |
| Reporter: | Rick Pizzi | Assignee: | Marko Mäkelä |
| Resolution: | Unresolved | Votes: | 1 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Description |
|
After reducing the value of innodb_buffer_pool_size at runtime from 90G to 50G with "set global", the memory is not released to system, OOM event strikes. Happened to multiple servers with same configuration. other relevant variables: innodb_buffer_pool_chunk_size=134217728 |
| Comments |
| Comment by Marko Mäkelä [ 2023-10-02 ] |
|
MariaDB Server 10.5 only supports InnoDB buf_pool instance. If I remember it correctly, the initially allocated buffer pool chunk can never be released. The data structures would be greatly simplified in MDEV-29445, where I intend to allocate one contiguous range of virtual memory addresses for the entire buffer pool. |
| Comment by Rick Pizzi [ 2023-10-02 ] |
|
The chunk size in this case is default 128M, this does not explain the behaviour... if "initially allocated" means the first chunk |