diff --git a/keyserver/src/database/migration-config.js b/keyserver/src/database/migration-config.js --- a/keyserver/src/database/migration-config.js +++ b/keyserver/src/database/migration-config.js @@ -539,6 +539,24 @@ ); }, ], + [ + 45, + () => + dbQuery( + SQL` + ALTER TABLE uploads + CHARSET utf8mb4 COLLATE utf8mb4_bin, + MODIFY COLUMN type varchar(255) + CHARSET latin1 COLLATE latin1_swedish_ci NOT NULL, + MODIFY COLUMN filename varchar(255) + CHARSET utf8mb4 COLLATE utf8mb4_bin NOT NULL, + MODIFY COLUMN mime varchar(255) + CHARSET latin1 COLLATE latin1_swedish_ci NOT NULL, + MODIFY COLUMN secret varchar(255) + CHARSET latin1 COLLATE latin1_swedish_ci NOT NULL; + `, + ), + ], ]); const newDatabaseVersion: number = Math.max(...migrations.keys()); diff --git a/keyserver/src/database/setup-db.js b/keyserver/src/database/setup-db.js --- a/keyserver/src/database/setup-db.js +++ b/keyserver/src/database/setup-db.js @@ -183,14 +183,14 @@ thread bigint(20) DEFAULT NULL, uploader varchar(255) CHARSET latin1 COLLATE latin1_bin NOT NULL, container bigint(20) DEFAULT NULL, - type varchar(255) NOT NULL, + type varchar(255) CHARSET latin1 COLLATE latin1_swedish_ci NOT NULL, filename varchar(255) NOT NULL, - mime varchar(255) NOT NULL, + mime varchar(255) CHARSET latin1 COLLATE latin1_swedish_ci NOT NULL, content longblob NOT NULL, - secret varchar(255) NOT NULL, + secret varchar(255) CHARSET latin1 COLLATE latin1_swedish_ci NOT NULL, creation_time bigint(20) NOT NULL, extra json DEFAULT NULL - ) ENGINE=InnoDB DEFAULT CHARSET=utf8; + ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; CREATE TABLE users ( id varchar(255) CHARSET latin1 COLLATE latin1_bin NOT NULL,