Bug #54175 Connector/J cannot handle supplemental characters supported by utf8mb4

Submitted: 2 Jun 2010 10:03 Modified: 18 Jun 2010 15:55
Reporter: Mikiya Okuno Email Updates:
Status: Closed Impact on me:
None 
Category:Connector / J Severity:S2 (Serious)
Version: OS:Any
Assigned to: CPU Architecture:Any

[2 Jun 2010 10:03] Mikiya Okuno
Description:
Connector/J cannot handle supplemental characters such as u2F9B2. C API can handle them, but Connector/J cannot.

How to repeat:
Run the attached java program. The expected output is like below, but the actually it gets garbled.

mysql [localhost] {msandbox} (test) > select * from t99;
+------+
| a    |
+------+
| 䕫   |
+------+
1 row in set (0.00 sec)

Suggested fix:
no idea
[2 Jun 2010 10:04] MySQL Verification Team
Adjust host, port, user and password.

Attachment: testmb4.java (application/octet-stream, text), 2.23 KiB.

[7 Jun 2010 12:33] Tonci Grgin
Mikiya, if you want you can try this diff. I'll test it today or tomorrow.
[18 Jun 2010 15:04] Mark Matthews
Fixed for 5.1.13.

From the changelog:

"Driver doesn't support utf8mb4 for servers 5.5.2 and newer. The
      driver now auto-detects servers configured with character_set_server=utf8mb4 or
      treats the Java encoding "utf-8" passed via "characterEncoding=..." as utf8mb4 in
      the "SET NAMES=" calls it makes when establishing the connection."
[18 Jun 2010 15:55] Tony Bedford
An entry has been added to the 5.1.13 changelog:

Connector/J did not support utf8mb4 for servers 5.5.2 and newer.

Connector/J now auto-detects servers configured with character_set_server=utf8mb4 or treats the Java encoding utf-8 passed via characterEncoding=... as utf8mb4 in the SET NAMES= calls it makes when establishing the connection.

Portions of this website are copyright © 2001, 2002 The PHP Group

Page generated in 0.066 sec. using MySQL 8.4.7-u6-cloud

Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.