Partially Revert 'refactor: noteテーブルのインデックス整理と配列カラムへのクエリでインデックスを使うように'
This reverts commit d92aaf81c4
partially.
Noteモデルの一部のB-TREEインデックスの定義を残すように
This commit is contained in:
parent
47eaf0b446
commit
7986f934e6
|
@ -7,18 +7,10 @@ export class OptimizeNoteIndexForArrayColumns1705222772858 {
|
|||
name = 'OptimizeNoteIndexForArrayColumns1705222772858'
|
||||
|
||||
async up(queryRunner) {
|
||||
await queryRunner.query(`DROP INDEX "public"."IDX_796a8c03959361f97dc2be1d5c"`);
|
||||
await queryRunner.query(`DROP INDEX "public"."IDX_54ebcb6d27222913b908d56fd8"`);
|
||||
await queryRunner.query(`DROP INDEX "public"."IDX_88937d94d7443d9a99a76fa5c0"`);
|
||||
await queryRunner.query(`DROP INDEX "public"."IDX_51c063b6a133a9cb87145450f5"`);
|
||||
await queryRunner.query(`CREATE INDEX "IDX_NOTE_FILE_IDS" ON "note" using gin ("fileIds")`)
|
||||
await queryRunner.query(`CREATE INDEX "IDX_NOTE_FILE_IDS" ON "note" using gin ("fileIds")`);
|
||||
}
|
||||
|
||||
async down(queryRunner) {
|
||||
await queryRunner.query(`DROP INDEX "IDX_NOTE_FILE_IDS"`)
|
||||
await queryRunner.query(`CREATE INDEX "IDX_51c063b6a133a9cb87145450f5" ON "note" ("fileIds") `);
|
||||
await queryRunner.query(`CREATE INDEX "IDX_88937d94d7443d9a99a76fa5c0" ON "note" ("tags") `);
|
||||
await queryRunner.query(`CREATE INDEX "IDX_54ebcb6d27222913b908d56fd8" ON "note" ("mentions") `);
|
||||
await queryRunner.query(`CREATE INDEX "IDX_796a8c03959361f97dc2be1d5c" ON "note" ("visibleUserIds") `);
|
||||
await queryRunner.query(`DROP INDEX "IDX_NOTE_FILE_IDS"`);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,6 +11,10 @@ import { MiChannel } from './Channel.js';
|
|||
import type { MiDriveFile } from './DriveFile.js';
|
||||
|
||||
@Entity('note')
|
||||
@Index('IDX_NOTE_TAGS', { synchronize: false })
|
||||
@Index('IDX_NOTE_MENTIONS', { synchronize: false })
|
||||
@Index('IDX_NOTE_FILE_IDS', { synchronize: false })
|
||||
@Index('IDX_NOTE_VISIBLE_USER_IDS', { synchronize: false })
|
||||
export class MiNote {
|
||||
@PrimaryColumn(id())
|
||||
public id: string;
|
||||
|
@ -137,7 +141,7 @@ export class MiNote {
|
|||
})
|
||||
public url: string | null;
|
||||
|
||||
@Index('IDX_NOTE_FILE_IDS', { synchronize: false })
|
||||
@Index()
|
||||
@Column({
|
||||
...id(),
|
||||
array: true, default: '{}',
|
||||
|
@ -149,14 +153,14 @@ export class MiNote {
|
|||
})
|
||||
public attachedFileTypes: string[];
|
||||
|
||||
@Index('IDX_NOTE_VISIBLE_USER_IDS', { synchronize: false })
|
||||
@Index()
|
||||
@Column({
|
||||
...id(),
|
||||
array: true, default: '{}',
|
||||
})
|
||||
public visibleUserIds: MiUser['id'][];
|
||||
|
||||
@Index('IDX_NOTE_MENTIONS', { synchronize: false })
|
||||
@Index()
|
||||
@Column({
|
||||
...id(),
|
||||
array: true, default: '{}',
|
||||
|
@ -178,7 +182,7 @@ export class MiNote {
|
|||
})
|
||||
public emojis: string[];
|
||||
|
||||
@Index('IDX_NOTE_TAGS', { synchronize: false })
|
||||
@Index()
|
||||
@Column('varchar', {
|
||||
length: 128, array: true, default: '{}',
|
||||
})
|
||||
|
|
Loading…
Reference in New Issue