Skip to content

Commit

Permalink
Merge pull request #1116 from spacebarchat/patch/null-message-flags
Browse files Browse the repository at this point in the history
Fix message flags being null
  • Loading branch information
Puyodead1 authored Apr 15, 2024
2 parents 29df169 + ee59ee7 commit 2028b25
Show file tree
Hide file tree
Showing 4 changed files with 75 additions and 2 deletions.
4 changes: 2 additions & 2 deletions src/util/entities/Message.ts
Original file line number Diff line number Diff line change
Expand Up @@ -192,8 +192,8 @@ export class Message extends BaseClass {
party_id: string;
};

@Column({ nullable: true })
flags?: number;
@Column({ default: 0 })
flags: number;

@Column({ type: "simple-json", nullable: true })
message_reference?: {
Expand Down
25 changes: 25 additions & 0 deletions src/util/migration/mariadb/1713116476900-messageFlagsNotNull.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import { MigrationInterface, QueryRunner } from "typeorm";

export class MessageFlagsNotNull1713116476900 implements MigrationInterface {
name = "MessageFlagsNotNull1713116476900";

public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(
"ALTER TABLE `messages` CHANGE flags flags_old integer;",
);
await queryRunner.query(
"ALTER TABLE `messages` ADD flags integer NOT NULL DEFAULT 0;",
);
await queryRunner.query(
"UPDATE `messages` SET flags = IFNULL(flags_old, 0);",
);
await queryRunner.query(
"ALTER TABLE `messages` DROP COLUMN flags_old;",
);
}

public async down(): Promise<void> {
// dont care
throw new Error("Migration down is not implemented.");
}
}
25 changes: 25 additions & 0 deletions src/util/migration/mysql/1713116476900-messageFlagsNotNull.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import { MigrationInterface, QueryRunner } from "typeorm";

export class MessageFlagsNotNull1713116476900 implements MigrationInterface {
name = "MessageFlagsNotNull1713116476900";

public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(
"ALTER TABLE `messages` CHANGE flags flags_old integer;",
);
await queryRunner.query(
"ALTER TABLE `messages` ADD flags integer NOT NULL DEFAULT 0;",
);
await queryRunner.query(
"UPDATE `messages` SET flags = IFNULL(flags_old, 0);",
);
await queryRunner.query(
"ALTER TABLE `messages` DROP COLUMN flags_old;",
);
}

public async down(): Promise<void> {
// dont care
throw new Error("Migration down is not implemented.");
}
}
23 changes: 23 additions & 0 deletions src/util/migration/postgres/1713116476900-messageFlagsNotNull.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import { MigrationInterface, QueryRunner } from "typeorm";

export class MessageFlagsNotNull1713116476900 implements MigrationInterface {
name = "MessageFlagsNotNull1713116476900";

public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(
"ALTER TABLE messages RENAME COLUMN flags TO flags_old;",
);
await queryRunner.query(
"ALTER TABLE messages ADD COLUMN flags integer NOT NULL DEFAULT 0;",
);
await queryRunner.query(
"UPDATE messages SET flags = COALESCE(flags_old, 0);",
);
await queryRunner.query("ALTER TABLE messages DROP COLUMN flags_old;");
}

public async down(): Promise<void> {
// dont care
throw new Error("Migration down is not implemented.");
}
}

0 comments on commit 2028b25

Please sign in to comment.