Bug #75081 Deprecated name for table_open_cache in warning message
Submitted: 3 Dec 2014 7:36 Modified: 9 Jan 2015 9:56
Reporter: Daniël van Eeden (OCA) Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server: Errors Severity:S3 (Non-critical)
Version:5.6 OS:Any
Assigned to: CPU Architecture:Any
Tags: Contribution, table_cache, table_open_cache

[3 Dec 2014 7:36] Daniël van Eeden
Description:
I encountered this message: "Changed limits: table_cache: %lu (requested %lu)"

The variable should be called table_open_cache instead of table_cache since 5.1.3 (http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html#sysvar_table_open_cach...)

How to repeat:
Compare error with variables for 5.6

Suggested fix:
Update message
[3 Dec 2014 7:36] Daniël van Eeden
Patch

(*) I confirm the code being submitted is offered under the terms of the OCA, and that I am authorized to contribute it.

Contribution: 0001-Update-message-as-table_cache-is-deprecated.patch (text/x-diff), 1.35 KiB.

[3 Dec 2014 8:03] Daniël van Eeden
The actual message as logged to the error log (on 5.6.16):
2014-12-03 07:34:26 5002 [Warning] Buffered warning: Could not increase number of max_open_files to more than 8192 (request: 8810)
2014-12-03 07:34:26 5002 [Warning] Buffered warning: Changed limits: table_cache: 3691 (requested 4000)
[3 Dec 2014 9:18] tsubasa tanaka
See also #73373.
(Fixed at 5.7.6, but how does 5.5 and 5.6 series?)
[3 Dec 2014 10:57] Umesh Shastry
Hello Daniel,

Thank you for the report and contribution.
Indeed, this is duplicate of Bug #73373 and which is fixed in trunk.

mysql-trunk/sql/mysqld.cc:

 ....
 5224  
 5225      my_snprintf(msg, sizeof(msg),
 5226:                 "Changed limits: table_open_cache: %lu (requested %lu)",
 5227                  limit, table_cache_size);
 5228      buffered_logs.buffer(WARNING_LEVEL, msg);

Thanks,
Umesh
[3 Dec 2014 10:58] Umesh Shastry
Duplicate of internal BUG 19285052 - WARNING MESSAGE SHOWS OLD VARIABLE NAME 
Community bug Bug #73373
[4 Dec 2014 6:56] Daniël van Eeden
It's indeed fixed for 5.7. But it is not fixed for 5.6. Please fix this also for 5.6 (and 5.5?) as the table_cache/table_open_cache name was changed in that release already.
[4 Dec 2014 8:54] Umesh Shastry
I agree with reporter, fix should be pushed in 5.6 as well.
[29 Jan 2015 20:11] Paul Dubois
Noted in 5.6.24, 5.7.6 changelogs.

An error message referred to the obsolete table_cache system variable
rather than to table_open_cache. Thanks to Daniël van Eeden for the
patch.
[27 Apr 2015 8:56] Laurynas Biveinis
commit 870186b336f3dd8822b86ea26b6c08c8e0c9ee72
Author: Staale Deraas <staale.deraas@oracle.com>
Date:   Mon Jan 26 16:00:30 2015 +0100

    BUG#20135780 DEPRECATED NAME FOR TABLE_OPEN_CACHE IN WARNING MESSAGE
    
    Corrected the variable name in a message from table_cache to table_open_cache.
    This was changed in MySQL 5.1.3. The patch is based on a contribution from
    Daniël van Eeden.