Bug #75962 Innodb calls fsync when freeing a LRU page to fulfill page request
| Submitted: | 19 Feb 2015 3:14 | Modified: | 3 Mar 2015 20:46 |
|---|---|---|---|
| Reporter: | Tianzhou Chen | Email Updates: | |
| Status: | Verified | Impact on me: | |
| Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
| Version: | 5.6.24, 5.7.6 | OS: | Any |
| Assigned to: | CPU Architecture: | Any | |
| Tags: | fsync, innodb, performance | ||
[19 Feb 2015 3:14]
Tianzhou Chen
[19 Feb 2015 3:16]
Tianzhou Chen
fix typo
[27 Feb 2015 19:05]
Sveta Smirnova
Thank you for the report. Do you mean buf_flush_sync_datafiles call? Looks like it has been removed in latest versions: [sveta@delly mysql-git]$ git branch mysql-5.5 * mysql-5.6 mysql-trunk [sveta@delly mysql-git]$ grep -R buf_flush_sync_datafiles storage/innobase/ [sveta@delly mysql-git]$ Which exact versionof 5.6 do you use?
[3 Mar 2015 6:07]
Tianzhou Chen
I mean: buf_flush_page(buf_pool, bpage, BUF_FLUSH_SINGLE_PAGE, true); which is called from: buf_flush_single_page_from_LRU The last parameter is "true" which does a fsync. This should be avoided and as I put in the initial bug report. This changed is introduced to fix an issue in AIO, so at least, we should only apply this change to AIO.
[3 Mar 2015 20:46]
Sveta Smirnova
Thank you for the feedback. Verified as described using code review. Since buf_flush_page has assertion ut_ad(!sync || flush_type == BUF_FLUSH_SINGLE_PAGE); this can be considered as feature request only and verified only to bring attention of InnoDB Team for possible refactoring.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.055 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.