Page MenuHomePhabricator

Assume utf8mb4 support
ClosedPublic

Authored by epriestley on Nov 6 2014, 9:09 PM.
Tags
None
Referenced Files
F15523707: D10798.diff
Mon, Apr 21, 3:06 AM
F15492190: D10798.id25917.diff
Sat, Apr 12, 12:09 PM
F15459767: D10798.id25951.diff
Mon, Mar 31, 4:08 PM
F15456528: D10798.id25917.diff
Sun, Mar 30, 10:23 AM
F15456185: D10798.id.diff
Sun, Mar 30, 7:42 AM
F15452731: D10798.diff
Sat, Mar 29, 6:59 AM
F15387891: D10798.id25917.diff
Mar 15 2025, 3:04 AM
F15375412: D10798.id25917.diff
Mar 12 2025, 11:07 PM
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
Branch
store2
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 2969
Build 2973: [Placeholder Plan] Wait for 30 Seconds