Bug #40104 regression with table names?
Submitted: 17 Oct 2008 11:33 Modified: 29 Jan 2009 5:04
Reporter: Peter Laursen (Basic Quality Contributor) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: General Severity:S3 (Non-critical)
Version:5.1.26, 5.1.28 OS:Windows
Assigned to: Sergei Glukhov CPU Architecture:Any
Tags: qc

[17 Oct 2008 11:33] Peter Laursen
Description:
http://mysql2.mirrors-r-us.net/doc/refman/5.1/en/identifiers.html

"Before MySQL 5.1.6, table names cannot contain “/”, “\”, “.”, or characters that are not allowed in a filename."

On windows a character that is not allowed in a filename is ":" (colon).  I cannot create a table using it is 5.1.28.  I think I could with an earlier 5.1 version!

How to repeat:
select version(); -- 5.1.28-rc-community-log
create table `test`.`me:i`( `id` int ); -- Incorrect table name 'me:i'
create table `test`.`me!i`( `id` int ); -- success

Suggested fix:
Restore full unicode compliance in identifiers!
[17 Oct 2008 14:15] Valeriy Kravchuk
Thank you for a bug report. Verified just as described:

C:\Program Files\MySQL\MySQL Server 5.0\bin>mysql -uroot -proot -P3310 test
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.28-rc-community MySQL Community Server (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> create table `test`.`me:i`( `id` int );
ERROR 1103 (42000): Incorrect table name 'me:i'
[17 Oct 2008 14:17] Valeriy Kravchuk
It is not a recent regression anyway. 5.1.26 has the same problem.
[18 Dec 2008 12:59] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/61972

2742 Sergey Glukhov	2008-12-18
      Bug#40104 regression with table names?
      On Winodws FN_DEVCHAR is ':' symbol.
      There is a check in mysql_create_table_no_lock() func
      on FN_DEVCHAR presence but this code is obsolete and
      unnecessary. So the fix is to remove unnecessary code.
[19 Dec 2008 11:33] Alexander Barkov
The patch looks fine. Ok to push
[23 Dec 2008 15:34] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/62266

2749 Sergey Glukhov	2008-12-23
      Bug#40104 regression with table names?
      On Winodws FN_DEVCHAR is ':' symbol.
      There is a check in mysql_create_table_no_lock() func
      on FN_DEVCHAR presence but this code is obsolete and
      unnecessary. So the fix is to remove unnecessary code.
[15 Jan 2009 6:36] Bugs System
Pushed into 5.1.31 (revid:joro@sun.com-20090115053147-tx1oapthnzgvs1ro) (version source revid:azundris@mysql.com-20081230114838-cn52tu180wcrvh0h) (merge vers: 5.1.31) (pib:6)
[19 Jan 2009 11:31] Bugs System
Pushed into 5.1.31-ndb-6.2.17 (revid:tomas.ulin@sun.com-20090119095303-uwwvxiibtr38djii) (version source revid:tomas.ulin@sun.com-20090115073240-1wanl85vlvw2she1) (merge vers: 5.1.31-ndb-6.2.17) (pib:6)
[19 Jan 2009 13:09] Bugs System
Pushed into 5.1.31-ndb-6.3.21 (revid:tomas.ulin@sun.com-20090119104956-guxz190n2kh31fxl) (version source revid:tomas.ulin@sun.com-20090119104956-guxz190n2kh31fxl) (merge vers: 5.1.31-ndb-6.3.21) (pib:6)
[19 Jan 2009 16:14] Bugs System
Pushed into 5.1.31-ndb-6.4.1 (revid:tomas.ulin@sun.com-20090119144033-4aylstx5czzz88i5) (version source revid:tomas.ulin@sun.com-20090119144033-4aylstx5czzz88i5) (merge vers: 5.1.31-ndb-6.4.1) (pib:6)
[20 Jan 2009 18:54] Bugs System
Pushed into 6.0.10-alpha (revid:joro@sun.com-20090119171328-2hemf2ndc1dxl0et) (version source revid:azundris@mysql.com-20081230114916-c290n83z25wkt6e4) (merge vers: 6.0.9-alpha) (pib:6)
[29 Jan 2009 5:04] Paul DuBois
Noted in 5.1.31, 6.0.10 changelogs.

The ':' character was incorrectly disallowed in table names.