Page MenuHomePhabricator

Assume utf8mb4 support
ClosedPublic

Authored by epriestley on Nov 6 2014, 9:09 PM.
Tags
None
Referenced Files
F19912848: D10798.diff
Thu, Apr 2, 10:33 PM
F19910579: D10798.diff
Thu, Apr 2, 8:41 AM
F19909007: D10798.id25917.diff
Wed, Apr 1, 10:55 PM
F19581236: D10798.id.diff
Feb 1 2026, 6:28 PM
F19556555: D10798.diff
Jan 30 2026, 8:03 PM
F19540071: D10798.id25917.diff
Jan 21 2026, 10:02 PM
F19539104: D10798.id25917.diff
Jan 21 2026, 5:23 PM
F19360555: D10798.diff
Dec 26 2025, 9:41 AM
Subscribers

Details

Summary

Ref T1191. This stops throwing an exception for non-BMP data when constructing queries.

  • For installs which have already adjusted, this allows emoji and other 4-byte characters to work.
  • For installs which have not adjusted yet but do have STRICT_ALL_TABLES set, MySQL will raise an error intead ("Incorrect string value...").
  • For installs which have not adjusted and also do not use STRICT_ALL_TABLES, this will silently truncate data. This is potentially a security risk. However, these installs are warned about the risk of leaving STRICT_ALL_TABLES disabled, there's no known way to exploit this issue, and they'll be auto-adjusted soon.
Test Plan

Ran locally and on secure.phabricator.com with this patch for a long time.

Diff Detail

Repository
rPHU libphutil
Lint
Lint Not Applicable
Unit
Tests Not Applicable