Bug #57009 table name case sensitivity of performance_schema vs. information_schema
Submitted: 24 Sep 2010 15:45
Reporter: Axel Schwenke Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: Information schema Severity:S4 (Feature request)
Version:5.5.6 OS:Any
Assigned to: CPU Architecture:Any
Triage: Needs Triage: D5 (Feature request)

[24 Sep 2010 15:45] Axel Schwenke
Description:
Table names in performance_schema are case sensitive, but in information_schema are not. This is not consistent. Not sure if information_schema is wrong or performance_schema. The `mysql` database is case sensitive again.

How to repeat:
select count(*) from INFORMATION_SCHEMA.TABLES;
+----------+
| count(*) |
+----------+
|       51 |
+----------+
1 row in set (0,00 sec)

select count(*) from INFORMATION_SCHEMA.tables;
+----------+
| count(*) |
+----------+
|       51 |
+----------+
1 row in set (0,00 sec)

vs:

select count(*) from performance_schema.THREADS;
+----------+
| count(*) |
+----------+
|       50 |
+----------+
1 row in set (0.00 sec)

select count(*) from performance_schema.threads;
ERROR 1146 (42S02): Table 'performance_schema.threads' doesn't exist

Suggested fix:
Case sensitivity rules should be consistent for system tables.
[29 Sep 2010 8:11] Kristian Köhntopp
"The `mysql` database is case sensitive again."

This is dependent on the file system and the lower_case_table_names setting.
[21 Oct 2010 16:35] Peter Laursen
worse than that!

Even on Windows with 'lower_case_table_names = 1', I_S' tables are UPPERCASE.  http://dev.mysql.com/doc/refman/5.0/en/identifier-case-sensitivity.html "Table names are stored in lowercase on disk and name comparisons are not case sensitive" (now you may say the I_S tables are not "stored" - but it is still an inconsistency!)

With 'lower_case_table_names = 2' and MySQL 5.5.6 on Windows, I_S tables UPPERCASE and P_S tables are lowercase.