[backend] Increase length of database columns containing hostnames

This commit is contained in:
Laura Hausmann 2023-11-27 21:58:26 +01:00
parent 03cdf4ec4a
commit 8a7c7cb0c9
Signed by: zotan
GPG key ID: D044E84C5BE01605
12 changed files with 65 additions and 18 deletions

View file

@ -0,0 +1,47 @@
import { MigrationInterface, QueryRunner } from "typeorm"
export class IncreaseHostCharLimit1701118152149 implements MigrationInterface {
name = 'IncreaseHostCharLimit1701118152149';
public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE "drive_file" ALTER COLUMN "userHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "user" ALTER COLUMN "host" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "user_profile" ALTER COLUMN "userHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "user_publickey" ALTER COLUMN "keyId" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "emoji" ALTER COLUMN "host" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "note" ALTER COLUMN "userHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "note" ALTER COLUMN "replyUserHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "note" ALTER COLUMN "renoteUserHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "host" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "iconUrl" TYPE character varying(4096)`);
await queryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "faviconUrl" TYPE character varying(4096)`);
await queryRunner.query(`ALTER TABLE "poll" ALTER COLUMN "userHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "abuse_user_report" ALTER COLUMN "targetUserHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "abuse_user_report" ALTER COLUMN "reporterHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "following" ALTER COLUMN "followeeHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "following" ALTER COLUMN "followerHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "follow_request" ALTER COLUMN "followeeHost" TYPE character varying(512)`);
await queryRunner.query(`ALTER TABLE "follow_request" ALTER COLUMN "followerHost" TYPE character varying(512)`);
}
public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE "drive_file" ALTER COLUMN "userHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "user" ALTER COLUMN "host" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "user_profile" ALTER COLUMN "userHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "user_publickey" ALTER COLUMN "keyId" TYPE character varying(256)`);
await queryRunner.query(`ALTER TABLE "emoji" ALTER COLUMN "host" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "note" ALTER COLUMN "userHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "note" ALTER COLUMN "replyUserHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "note" ALTER COLUMN "renoteUserHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "host" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "iconUrl" TYPE character varying(256)`);
await queryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "faviconUrl" TYPE character varying(256)`);
await queryRunner.query(`ALTER TABLE "poll" ALTER COLUMN "userHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "abuse_user_report" ALTER COLUMN "targetUserHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "abuse_user_report" ALTER COLUMN "reporterHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "following" ALTER COLUMN "followeeHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "following" ALTER COLUMN "followerHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "follow_request" ALTER COLUMN "followeeHost" TYPE character varying(128)`);
await queryRunner.query(`ALTER TABLE "follow_request" ALTER COLUMN "followerHost" TYPE character varying(128)`);
}
}

View file

@ -71,7 +71,7 @@ export class AbuseUserReport {
//#region Denormalized fields
@Index()
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})
@ -79,7 +79,7 @@ export class AbuseUserReport {
@Index()
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})

View file

@ -39,7 +39,7 @@ export class DriveFile {
@Index()
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "The host of owner. It will be null if the user in local.",
})

View file

@ -20,7 +20,7 @@ export class Emoji {
@Index()
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
})
public host: string | null;

View file

@ -55,7 +55,7 @@ export class FollowRequest {
//#region Denormalized fields
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})
@ -76,7 +76,7 @@ export class FollowRequest {
public followerSharedInbox: string | null;
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})

View file

@ -50,7 +50,7 @@ export class Following {
//#region Denormalized fields
@Index()
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})
@ -72,7 +72,7 @@ export class Following {
@Index()
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})

View file

@ -20,7 +20,7 @@ export class Instance {
*/
@Index({ unique: true })
@Column("varchar", {
length: 128,
length: 512,
comment: "The host of the Instance.",
})
public host: string;
@ -149,13 +149,13 @@ export class Instance {
public maintainerEmail: string | null;
@Column("varchar", {
length: 256,
length: 4096,
nullable: true,
})
public iconUrl: string | null;
@Column("varchar", {
length: 256,
length: 4096,
nullable: true,
})
public faviconUrl: string | null;

View file

@ -221,7 +221,7 @@ export class Note {
//#region Denormalized fields
@Index()
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})
@ -235,7 +235,7 @@ export class Note {
public replyUserId: User["id"] | null;
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})
@ -249,7 +249,7 @@ export class Note {
public renoteUserId: User["id"] | null;
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})

View file

@ -58,7 +58,7 @@ export class Poll {
@Index()
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})

View file

@ -242,7 +242,7 @@ export class UserProfile {
//#region Denormalized fields
@Index()
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment: "[Denormalized]",
})

View file

@ -22,7 +22,7 @@ export class UserPublickey {
@Index({ unique: true })
@Column("varchar", {
length: 256,
length: 512,
})
public keyId: string;

View file

@ -229,7 +229,7 @@ export class User {
@Index()
@Column("varchar", {
length: 128,
length: 512,
nullable: true,
comment:
"The host of the User. It will be null if the origin of the user is local.",