Bug #101326 support fdatasync as an option for innodb_flush_method
Submitted: 26 Oct 2020 21:30 Modified: 21 Jul 2021 14:00
Reporter: Mark Callaghan Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S4 (Feature request)
Version:8.0 OS:Any
Assigned to: CPU Architecture:Any

[26 Oct 2020 21:30] Mark Callaghan
Description:
This is a feature request. I want innodb_flush_method to accept "fdatasync" as an option and then really use fdatasync rather than fsync to reduce commit latency. Note that Postgres has a config option to choose either fsync or fdatasync for the WAL (redo). fdatasync is frequently much faster than fsync because it does less work.

I wrote about this here:
http://smalldatum.blogspot.com/2020/10/innodb-fsync-and-fdatasync-reducing.html

How to repeat:
Run pg_test_fsync to compare fsync and fdatasync latency, fio might also work. I used pg_test_fsync and then modified InnoDB to try fdatasync.
[27 Oct 2020 4:32] MySQL Verification Team
Hello Mark,

Thank you for the feedback and reasonable feature request!

Thanks,
Umesh
[21 Jul 2021 14:00] Mark Callaghan
This arrived in 8.0.26 and can be closed
https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-26.html