Bug #71318 table_open_cache "autosizing" in 5.6.12+ is not explained in the manual
Submitted: 8 Jan 2014 20:48 Modified: 10 Jul 2014 14:45
Reporter: Valeriy Kravchuk Email Updates:
Status: Closed Impact on me:
Category:MySQL Server: Documentation Severity:S3 (Non-critical)
Version:5.6 OS:Any
Assigned to: Paul DuBois CPU Architecture:Any
Tags: missing manual, table_open_cache

[8 Jan 2014 20:48] Valeriy Kravchuk
Manual (http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html#sysvar_table_open_cach...) describes default value for the table_open_cache like this (in the table):

Permitted Values (>= 5.6.8, <= 5.6.11)
Type	numeric
Default	2000
Range	1 .. 524288
Permitted Values (>= 5.6.12)
Type	numeric
Default	2000 (autosized)
Range	1 .. 524288

So, "autosized" in >=5.6.12 was probably added for a reason. But I do not see any explanation of what kind of automatic sizing happens to define default value and why it is still 2000. Release notes for 5.6.12 (http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-12.html) also says nothing about any kind of "autosizing" besides this bug fix:

"Performance Schema parameter autosizing at startup did not take into account later autosizing changes to other startup parameters on which the Performance Schema parameters depended. (Bug #16430532)"

How to repeat:
Try to understand what change happened since 5.6.12 in the way default value for table_open_cache is determined on used. I'd assume it was serious enough to add entire section to that table...

Suggested fix:
Please, document explicitly the change in the way default value for this variable is determined (if any) or impact of this value to something else. "(autosized)" as the only documented difference does not really help.
[9 Jan 2014 8:50] MySQL Verification Team
Hello Valeriy,

Thank you for the report.

[24 Jan 2014 16:07] Paul DuBois
The point of autosizing is that the user does not have to do it. We're not going to explain in detail what goes into the process because it can change.

A user can always set the value explicitly if desired.
[10 Jul 2014 14:45] Paul DuBois
Thank you for your bug report. This issue has been addressed in the documentation. The updated documentation will appear on our website shortly.

It turns out that table_open_cache is not autosized at all. As of 5.6.8, its default is 2000 and is not autosized. I'll remove the indication that it is autosized.