Comment

Comment by devy

Along the same lines of Unicode horror stories, my personal favorite is the MySQL's original 3-byte non-standard unicode implementation, called "utf8" and then later renamed to "utf8mb3". [1] It only covers the Basic Multilingual Plane (BMP). And it felt like the designed decision were made similar like those on MyISAM db engine that in retrospective, those were the wrong optimization that caused more trouble than bring benefits. And they didn't fix it until MySQL version 5.5.3 via introduction of "utf8mb4" charset. In a very obvious way, if you use emojis in your application with MySQL backend and not using the full 4-byte "utf8mb4" charset, you will absolutely get bitten by that gotcha. [2][3][4]

[1]: https://dev.mysql.com/doc/refman/8.0/en/charset-unicode-utf8...

[2]: https://medium.com/@adamhooper/in-mysql-never-use-utf8-use-u...

[3]: https://stackoverflow.com/questions/202205/how-to-make-mysql...

[4]: https://www.eversql.com/mysql-utf8-vs-utf8mb4-whats-the-diff...

parent devy 8 years ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton