3 ms·
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. Did we
by dvtrn 8y ago
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.
Did we use to work together? Because I've been one of those poor DBAs to inherit a system that was not using utf8mb4 charsets, and sure damn enough an emoji took down said system for hours affecting every client on the books.
They recovered, but limped along for another two years before eventually getting bought out and effectively soft-shutting down.
I was hired post-Armageddon to keep the lights on and eventually left once the acquisition completed.
- k__ 8y agoDoesn't seem to be a rare problem. When I did a web project in university in 2014, the assistant professor warned me at the beginning that this will happen with MySQL and Emoji, because he had the problem the last semester. And then in 2017, years after I learned that this was a huge problem, I got a freelance app project where they already had a back-end developer. The app crashed multiple times after release when I finally realized the back-end dev didn't know anything about this and simply clicked together the DB in phpmyadmin with all the default settings...
- dvtrn 8y agoYou're probably right that it's not a rare problem, but at the right scale it can be a business ending problem.
- k__ 8y agoTrue. I'm just amazed that there seems to be a fair amount of back-end developers who don't know anything about this. Probably because SQL systems are used at more conservative companies with older customers?
- dvtrn 8y agoThat's a good question. I think part of this can be attributed to the efforts taken by the database World to demystify database operations and abstract some of the processes to the point where infrastructure by click became easy enough for these problem to be completely forgotten about or overlooked by your modern developer doing business as DBA (swidt?). Can insert? Can query? Nothing more to do here.
- devy 8y agoDid we use to work together? Because I've been one of those poor DBAs to inherit a system that was not using utf8mb4 charsets, and sure damn enough an emoji took down said system for hours affecting every client on the books. Perhaps ;) My first major project out of current job was spending two months figure out why our system doesn't support emojis. And MySQL was the blame, I want my two months back.