Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.

For the best experience please use the latest Chrome or Safari browser. Firefox 10 (to be released soon) will also handle it.

MySQLの思い出話

2025/03/25
MySQL30周年&ユーザ会25周年記念イベント

Ryuta Kamizono (@kamipo)

About me

https://note.com/newmohq/n/n49e2901248e2

10年前(2015年)の思い出話をします

ハハパパ寿司ビール問題

https://bugs.mysql.com/bug.php?id=76553

utf8mb4 character set treats Sushi Emoji (U+1F363) and Beer Emoji (U+1F37A) as same characters, when using utf8mb4_general_ci or utf8mb4_unicode_ci. Because both collations are treating same weight 0xfffd for Emoji. This issue is not limited to Emoji, but possible to all SMP characters.

ハハパパ寿司ビール問題

https://bugs.mysql.com/bug.php?id=76553

To treat these Emoji as different characters, either utf8mb4_bin or utf8mb4_unicode_520_ci should be used. However, utf8mb4_unicode_520_ci has another issue, so called Haha-Papa issue means Mother-Father issue in Japanese. "ハ" (U+30CF KATAKANA LETTER HA), "パ" (U+30D1 KATAKANA LETTER PA), and "バ" (U+30D0 KATAKANA LETTER BA) can not be recognized different characters.

ハハパパ寿司ビール問題

元々はRailsのハハパパ問題解決のためにどういうストーリーだとより問題が伝わるかめちゃくちゃMySQLのUnicodeの挙動について調べてたら、寿司ビール問題の原理も説明できることに気づいた。

ハハパパ寿司ビール問題

梶山さんに外部からissue報告してもらったほうが開発をつつきやすいと言われて寿司ビール問題としてissue報告したところ、MySQL開発陣はバカ受けだったらしい。

2 years later...

日本のコミュニティ発祥でMySQLのUnicode対応がバキバキに進歩したと言っても過言ではない。

MySQL30周年&MyNA25周年おめでとうございます🍣🍺

Use a spacebar or arrow keys to navigate