Bug #81526 Behavior of atomic write feature not documented
Submitted: 20 May 2016 17:36 Modified: 23 Jun 2016 17:41
Reporter: Geoff Montee Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Documentation Severity:S3 (Non-critical)
Version:5.7 OS:Any
Assigned to: CPU Architecture:Any
Tags: documentation, flash, fusion-io, innodb

[20 May 2016 17:36] Geoff Montee
Description:
The release notes of MySQL 5.7.4 say the following:

"InnoDB: The Fusion-io Non-Volatile Memory (NVM) file system on Linux provides atomic write capability, which makes the InnoDB doublewrite buffer redundant. For system tablespace files (ibdata files) located on Fusion-io devices that support atomic writes, the InnoDB doublewrite buffer is automatically disabled. (Bug #18069105)"

https://dev.mysql.com/doc/relnotes/mysql/5.7/en/news-5-7-4.html

But this feature does not seem to be documented on any of the following pages:

https://dev.mysql.com/doc/refman/5.7/en/innodb-disk-io.html

https://dev.mysql.com/doc/refman/5.7/en/optimizing-innodb-diskio.html

https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_doublewrite

How to repeat:
See documentation.

Suggested fix:
Please document the behavior.

Some questions that I would like answered in the documentation:

- Does it only support Fusion-IO devices?

- Does it only support NVMFS?

- Does it rely on other settings being configured as well, such as innodb_flush_method?
[21 May 2016 0:15] MySQL Verification Team
Thank you for the bug report.
[23 Jun 2016 17:41] Daniel Price
Posted by developer:
 
The changelog entry has beed revised as follows:

"If system tablespace files (ibdata files) are located on Fusion-io
devices that support atomic writes, doublewrite buffering is automatically
disabled and Fusion-io atomic writes are used for all data files. Because
the doublewrite buffer setting is global, doublewrite buffering is also
disabled for data files residing on non-Fusion-io hardware. 

This feature is only supported on Fusion-io hardware and is only enabled
for Fusion-io NVMFS on Linux. To take full advantage of this feature, an
innodb_flush_method setting of O_DIRECT is recommended."

Information about this feature has been added to the following pages. The changes should appear online soon.

https://dev.mysql.com/doc/refman/5.7/en/innodb-disk-io.html
https://dev.mysql.com/doc/refman/5.7/en/optimizing-innodb-diskio.html
https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_doublewrite

Thank you for the bug report.