Bug #10451 no charset description (fileds empty)
Submitted: 8 May 2005 17:26 Modified: 9 May 2005 9:57
Reporter: Vlad Alexa Mancini Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server Severity:S3 (Non-critical)
Version:4.1.10a OS:Windows (windows 2000)
Assigned to: CPU Architecture:Any

[8 May 2005 17:26] Vlad Alexa Mancini
Description:
i use 4.1.10a binary release for windows  (mysql-noinstall-4.1.10a-win32.zip) , when i do SHOW CHARACTER SET; i get 

+---------+-------------+-------------------+--------+
| Charset | Description | Default collation | Maxlen |
+---------+-------------+-------------------+--------+
| big5    |             | big5_chinese_ci   |      2 |
| latin1  |             | latin1_swedish_ci |      1 |
| ujis    |             | ujis_japanese_ci  |      3 |
| sjis    |             | sjis_japanese_ci  |      2 |
| tis620  |             | tis620_thai_ci    |      1 |
| euckr   |             | euckr_korean_ci   |      2 |
| gb2312  |             | gb2312_chinese_ci |      2 |
| gbk     |             | gbk_chinese_ci    |      2 |
| utf8    |             | utf8_general_ci   |      3 |
| ucs2    |             | ucs2_general_ci   |      2 |
| binary  |             | binary            |      1 |
+---------+-------------+-------------------+--------+

Like you see there are no descriptions (however they exist in share\charsets\Index.xml) and the list is a lot smaller than it should be is it not ?

How to repeat:
SHOW CHARACTER SET;
[8 May 2005 18:51] Vlad Alexa Mancini
this behaviour is triggered by a configuration option that is not by default in the distribution , whis happens only if i add :

character-sets-dir = C:\path\to\mysql\share\charsets\

very strange , haven't tested under linux tho
[8 May 2005 20:12] Vlad Alexa Mancini
furthermore , the problem is only when backslashes are used

character-sets-dir = C:/path/to/mysql/share/charsets/

for example works just fine and returns 

+----------+-----------------------------+---------------------+--------+
| Charset  | Description                 | Default collation   | Maxlen |
+----------+-----------------------------+---------------------+--------+
| big5     | Big5 Traditional Chinese    | big5_chinese_ci     |      2 |
| dec8     | DEC West European           | dec8_swedish_ci     |      1 |
| cp850    | DOS West European           | cp850_general_ci    |      1 |
| hp8      | HP West European            | hp8_english_ci      |      1 |
| koi8r    | KOI8-R Relcom Russian       | koi8r_general_ci    |      1 |
| latin1   | ISO 8859-1 West European    | latin1_swedish_ci   |      1 |
| latin2   | ISO 8859-2 Central European | latin2_general_ci   |      1 |
| swe7     | 7bit Swedish                | swe7_swedish_ci     |      1 |
| ascii    | US ASCII                    | ascii_general_ci    |      1 |
| ujis     | EUC-JP Japanese             | ujis_japanese_ci    |      3 |
| sjis     | Shift-JIS Japanese          | sjis_japanese_ci    |      2 |
| hebrew   | ISO 8859-8 Hebrew           | hebrew_general_ci   |      1 |
| tis620   | TIS620 Thai                 | tis620_thai_ci      |      1 |
| euckr    | EUC-KR Korean               | euckr_korean_ci     |      2 |
| koi8u    | KOI8-U Ukrainian            | koi8u_general_ci    |      1 |
| gb2312   | GB2312 Simplified Chinese   | gb2312_chinese_ci   |      2 |
| greek    | ISO 8859-7 Greek            | greek_general_ci    |      1 |
| cp1250   | Windows Central European    | cp1250_general_ci   |      1 |
| gbk      | GBK Simplified Chinese      | gbk_chinese_ci      |      2 |
| latin5   | ISO 8859-9 Turkish          | latin5_turkish_ci   |      1 |
| armscii8 | ARMSCII-8 Armenian          | armscii8_general_ci |      1 |
| utf8     | UTF-8 Unicode               | utf8_general_ci     |      3 |
| ucs2     | UCS-2 Unicode               | ucs2_general_ci     |      2 |
| cp866    | DOS Russian                 | cp866_general_ci    |      1 |
| keybcs2  | DOS Kamenicky Czech-Slovak  | keybcs2_general_ci  |      1 |
| macce    | Mac Central European        | macce_general_ci    |      1 |
| macroman | Mac West European           | macroman_general_ci |      1 |
| cp852    | DOS Central European        | cp852_general_ci    |      1 |
| latin7   | ISO 8859-13 Baltic          | latin7_general_ci   |      1 |
| cp1251   | Windows Cyrillic            | cp1251_general_ci   |      1 |
| cp1256   | Windows Arabic              | cp1256_general_ci   |      1 |
| cp1257   | Windows Baltic              | cp1257_general_ci   |      1 |
| binary   | Binary pseudo charset       | binary              |      1 |
| geostd8  | GEOSTD8 Georgian            | geostd8_general_ci  |      1 |
+----------+-----------------------------+---------------------+--------+
[9 May 2005 9:57] Hartmut Holzgraefe
As '\' is the escape character in my.cnf you have to either escape it itself 
as '\\' if you need a verbatim '\' or just use forward slashes '/' for windows
pathes, too.

See also  http://dev.mysql.com/doc/mysql/en/option-files.html :

 Leading and trailing blanks are automatically deleted from option names and values. You may use the escape sequences '\b', '\t', '\n', '\r', '\\', and '\s' in option values to represent the backspace, tab, newline, carriage return, and space characters.

On Windows, if an option value represents a pathname, you should specify the value using '/' rather than '\' as the pathname separator. If you use '\', you must double it as '\\', because '\' is the escape character in MySQL.