[MDEV-24350] buf_dblwr unnecessarily uses memory-intensive srv_stats counters Created: 2020-12-04  Updated: 2021-01-07  Resolved: 2020-12-04

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - InnoDB
Affects Version/s: 10.5.7
Fix Version/s: 10.5.9

Type: Bug Priority: Major
Reporter: Marko Mäkelä Assignee: Marko Mäkelä
Resolution: Fixed Votes: 0
Labels: performance

Issue Links:
Relates
relates to MDEV-24544 innodb_buffer_pool_wait_free is not p... Closed
relates to MDEV-23855 InnoDB log checkpointing causes regre... Closed

 Description   

After the code refactoring that was performed in MDEV-23855, we can replace the use of srv_stats counters in buf_dbwlr with regular variables that are protected by buf_dblwr.mutex.

The counters in srv_stats use std::atomic and multiple cache lines per counter. This is an overkill in a case where a critical section already exists in the code. A regular variable will work just fine, with much smaller memory bus impact.


Generated at Thu Feb 08 09:29:19 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.