From 625120e07e5f5e6a47a8cd375e3aa9db0d62d9dc Mon Sep 17 00:00:00 2001 From: Dragory Date: Sun, 17 Feb 2019 15:26:44 +0200 Subject: [PATCH] Fix emoji index in reaction roles --- ...0409894008-FixEmojiIndexInReactionRoles.ts | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 src/migrations/1550409894008-FixEmojiIndexInReactionRoles.ts diff --git a/src/migrations/1550409894008-FixEmojiIndexInReactionRoles.ts b/src/migrations/1550409894008-FixEmojiIndexInReactionRoles.ts new file mode 100644 index 00000000..077c004e --- /dev/null +++ b/src/migrations/1550409894008-FixEmojiIndexInReactionRoles.ts @@ -0,0 +1,19 @@ +import { MigrationInterface, QueryRunner } from "typeorm"; + +export class FixEmojiIndexInReactionRoles1550409894008 implements MigrationInterface { + public async up(queryRunner: QueryRunner): Promise { + // In utf8mb4_swedish_ci, different native emojis are counted as the same char for indexes, which means we can't + // have multiple native emojis on a single message since the emoji field is part of the primary key + await queryRunner.query(` + ALTER TABLE \`reaction_roles\` + CHANGE COLUMN \`emoji\` \`emoji\` VARCHAR(64) NOT NULL COLLATE 'utf8mb4_bin' AFTER \`message_id\` + `); + } + + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query(` + ALTER TABLE \`reaction_roles\` + CHANGE COLUMN \`emoji\` \`emoji\` VARCHAR(64) NOT NULL AFTER \`message_id\` + `); + } +}