Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.5.7, 10.6.0
Description
For MDEV-25113, one of the suggested fixes was to speed up buf_LRU_get_free_block() by making it wake up every time a buffer pool block is released to the buf_pool.free list.
At low thread counts, this patch would work as expected, improving throughput and greatly reducing the maximum latency, say, from 30 seconds to some milliseconds, when having 4GiB of data, 4GiB log and 1GiB buffer pool, running on NVMe. This was observed on both 10.5 and 10.6.
Alas, on my Debian Sid system (Linux 5.10.0), it would cause an extreme regression at 1000 concurrent clients, both reducing the throughput and increasing the latency. That problem needs to be repeated, understood and resolved before we can apply this performance improvement.
Attachments
Issue Links
- relates to
-
MDEV-26055 Adaptive flushing is still not getting invoked in 10.5.11
- Closed
-
MDEV-26827 Make page flushing even faster
- Closed
-
MDEV-23399 10.5 performance regression with IO-bound tpcc
- Closed
-
MDEV-25113 Reduce effect of parallel background flush on select workload
- Closed