Bug #62986 innodb_file_format_check option does not take ON or OFF as acceptable setting
Submitted: 28 Oct 2011 0:35 Modified: 16 Oct 2012 4:55
Reporter: Dimitriy A Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Documentation Severity:S3 (Non-critical)
Version:5.5.17 OS:Any
Assigned to: John Russell CPU Architecture:Any
Tags: configuration, innodb_file_format_check, option, variable
Triage: Needs Triage: D3 (Medium)

[28 Oct 2011 0:35] Dimitriy A
Description:
In my.cnf, innodb_file_format_check has been disabled, yet the server is reporting that it is still enabled.
innodb_file_format_check=OFF

mysql> show variables like 'innodb_file_format_check';
+--------------------------+-------+
| Variable_name            | Value |
+--------------------------+-------+
| innodb_file_format_check | ON    |
+--------------------------+-------+

Workaround is to use the following setting instead in my.cnf file:
innodb_file_format_check=0

In the manual at http://dev.mysql.com/doc/refman/5.5/en/innodb-parameters.html#sysvar_innodb_file_format_ch..., ON is listed as default value and at run time ON or OFF is reported, so I would expect to be able to set the value with ON or OFF in my.cnf file.

This is somewhat related to Bug #44509 at http://bugs.mysql.com/bug.php?id=44509.

How to repeat:
Set my.cnf entry to the following:
innodb_file_format_check=OFF

Verify with this query:
show variables like 'innodb_file_format_check';

Suggested fix:
Allow ON/OFF, 1/0, and true/false to work as valid values. At a minimum ON/OFF and 1/0.
[28 Oct 2011 3:17] Valeriy Kravchuk
As 5.5 manual (http://dev.mysql.com/doc/refman/5.5/en/dynamic-system-variables.html) still
says that you should use numeric values in my.cnf, this is a duplicate/another example of
Bug #44509.
[10 Jan 2012 3:20] Dimitriy A
I think part of the problem is that the page which describes the proper use of dynamic variables in option files does not list all applicable variables.

For example, the page http://dev.mysql.com/doc/refman/5.5/en/dynamic-system-variables.html, which states "Variables that have a type of “boolean” can be set to 0, 1, ON or OFF. (If you set them on the command line or in an option file, use the numeric values.)", does not list "innodb_file_format_check" variable. When doing a search from google, someone looking for this variable will arrive at http://dev.mysql.com/doc/refman/5.1/en/innodb-parameters.html page, which does not state this requirement.

So at the very least the documentation needs to be fixed. Preferably the variables should accept numeric and boolean options.
[11 Jan 2012 16:07] Valeriy Kravchuk
OK, let's start with better documentation for current state...
[22 Feb 2012 22:50] John Russell
The option description has included for a long time the instruction to use 1 or 0 when specifying. Now an additional note is added:

            Despite the default value sometimes being displayed as
            ON or OFF, always use
            the numeric values 1 or 0 to turn this option on or off in
            your configuration file or command line.
[23 Feb 2012 0:43] Dimitriy A
Should the notice regarding using numeric values in configuration file be move to a proper help page? From http://dev.mysql.com/doc/refman/5.5/en/dynamic-system-variables.html to http://dev.mysql.com/doc/refman/5.1/en/innodb-parameters.html
page.