[MDEV-26784] [Warning] InnoDB: Difficult to find free blocks in the buffer pool Created: 2021-10-07 Updated: 2023-03-22 Resolved: 2023-02-10 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Storage Engine - InnoDB |
| Affects Version/s: | 10.5, 10.6, 10.7 |
| Fix Version/s: | 10.5.14, 10.6.6, 10.7.2 |
| Type: | Bug | Priority: | Critical |
| Reporter: | Nilnandan Joshi | Assignee: | Thirunarayanan Balathandayuthapani |
| Resolution: | Fixed | Votes: | 1 |
| Labels: | recovery | ||
| Issue Links: |
|
||||||||||||||||||||
| Description |
|
The mariabackup --prepare shows this warning:
The error is similar to: But looks like they are already fixed in 10.5.1 |
| Comments |
| Comment by Marko Mäkelä [ 2021-10-07 ] | |||||||||||||||||||||
|
This should also affect InnoDB crash recovery. I think that we must try to reproduce this on 10.5 or 10.6. I would suggest the following:
We are not interested in failures of older versions than 10.5; we know that those can run out of memory easily. | |||||||||||||||||||||
| Comment by Roel Van de Paar [ 2021-10-07 ] | |||||||||||||||||||||
|
Plan to test this tomorrow. | |||||||||||||||||||||
| Comment by Roel Van de Paar [ 2021-10-09 ] | |||||||||||||||||||||
|
Easy to reproduce, without Mariabackup, as described. Present in 10.5 trunk as of today.
| |||||||||||||||||||||
| Comment by Roel Van de Paar [ 2021-10-09 ] | |||||||||||||||||||||
|
Reproducible testcase (w/ thanks marko for the perfect lead-in!)
| |||||||||||||||||||||
| Comment by Roel Van de Paar [ 2021-10-09 ] | |||||||||||||||||||||
|
Thus, the MariaBackup issue is an effect only, and MariaBackup is not a/the cause. | |||||||||||||||||||||
| Comment by Roel Van de Paar [ 2021-10-09 ] | |||||||||||||||||||||
|
Issue present in 10.6 trunk
| |||||||||||||||||||||
| Comment by Roel Van de Paar [ 2021-10-09 ] | |||||||||||||||||||||
|
Issue present in 10.7 trunk
| |||||||||||||||||||||
| Comment by Marko Mäkelä [ 2022-01-20 ] | |||||||||||||||||||||
|
I diagnosed this with thiru today. Similar to We agreed on a fix that buf_flush_LRU_list_batch() should disregard the 256-page minimum length of buf_pool.LRU (BUF_LRU_MIN_LEN) during recovery, and simply initiate writes of all dirty pages whenever a page needs to be allocated. In the hang that thiru reproduced, the length of buf_pool.LRU was 215 pages. That fix is OK to push, along with the regression test case that reproduces the issue. | |||||||||||||||||||||
| Comment by Michael Widenius [ 2023-02-10 ] | |||||||||||||||||||||
|
The Innodb.recovery_memory test fails constantly in bb-11.0 with: CURRENT_TEST: innodb.recovery_memory I assume most developers has not noticed this as this is marked as 'big'. | |||||||||||||||||||||
| Comment by Marko Mäkelä [ 2023-02-10 ] | |||||||||||||||||||||
|
monty, I think that your observation needs to be considered in the scope of the follow-up fix | |||||||||||||||||||||
| Comment by Thirunarayanan Balathandayuthapani [ 2023-02-22 ] | |||||||||||||||||||||
|
monty Issue has been fixed as |