Convert pushlog and refcursor to BLOB storage
Summary: Fixes T5840. Some time ago I incorrectly believed that `latin1_bin` collation was synonymous with "binary". It is not, and does not permit UTF8 characters outside of BMP, among other sequences. These two tables currently have `LONGTEXT` columns which should be `LONGBLOB`. The table design is explicilty intended to accommodate invalid/unreasonably long ref names, but the collation prevents this from working properly. After T1191, we'll have a general system for resolving this, but a user hit an issue yesterday (T5840) with a brnach name containing Chinese characters. Test Plan: - Tried emoji inserts into both tables, was rebuffed. - Ran migration. - Performed emoji inserts into both tables. Reviewers: btrahan Reviewed By: btrahan Subscribers: epriestley Maniphest Tasks: T5840 Differential Revision: https://secure.phabricator.com/D10217
This commit is contained in:
2
resources/sql/autopatches/20140811.blob.1.sql
Normal file
2
resources/sql/autopatches/20140811.blob.1.sql
Normal file
@@ -0,0 +1,2 @@
|
||||
ALTER TABLE {$NAMESPACE}_repository.repository_refcursor
|
||||
CHANGE refNameRaw refNameRaw LONGBLOB NOT NULL;
|
||||
2
resources/sql/autopatches/20140811.blob.2.sql
Normal file
2
resources/sql/autopatches/20140811.blob.2.sql
Normal file
@@ -0,0 +1,2 @@
|
||||
ALTER TABLE {$NAMESPACE}_repository.repository_pushlog
|
||||
CHANGE refNameRaw refNameRaw LONGBLOB;
|
||||
Reference in New Issue
Block a user