[MDEV-27848] Remove unused wait/io/file/innodb/innodb_log_file Created: 2022-02-15  Updated: 2022-02-15  Resolved: 2022-02-15

Status: Closed
Project: MariaDB Server
Component/s: Performance Schema, Storage Engine - InnoDB
Affects Version/s: 10.8.1
Fix Version/s: 10.8.3

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

Issue Links:
Relates
relates to MDEV-14425 Change the InnoDB redo log format to ... Closed
relates to MDEV-17084 Optimize append only files for NVDIMM Closed
relates to MDEV-21534 improve locking/waiting in log_write_... Closed
relates to MDEV-26603 asynchronous redo log write Stalled

 Description   

The performance_schema counter wait/io/file/innodb/innodb_log_file is always reported as 0.

The way how redo log writes are being waited for was refactored in MDEV-21534, which is when the uninstrumented flush_lock and write_lock were introduced. Even before this change, all the wait/io/file/innodb/ counters were always 0 in my tests. I tested the latest 10.2 yesterday.

Moreover, if the PMEM interface that was introduced in MDEV-17084 is being used, writes to the InnoDB log file will completely avoid any system calls and performance_schema instrumentation. The PMEM interface was rewritten in MDEV-14425 to cover also reads (during recovery).

In MDEV-26603 we plan to implement asynchronous writes for the redo log.

When it comes to persistent data files (wait/io/file/innodb/innodb_data_file) and the temporary data file (wait/io/file/innodb/innodb_temp_file), all writes are already since MDEV-23855 asynchronous and thus uninstrumented by performance_schema. Only page reads on a buffer pool miss would be synchronous and thus theoretically coverable by performance_schema. But, this ticket is only about removing the ib_logfile0 redo log file instrumentation.


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