mirror of
https://codeberg.org/yeentown/barkey.git
synced 2025-07-07 04:26:58 +00:00
add IDX_instance_host_key
This commit is contained in:
parent
5af5414fdf
commit
566f92ab73
2 changed files with 21 additions and 0 deletions
|
@ -0,0 +1,20 @@
|
||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: hazelnoot and other Sharkey contributors
|
||||||
|
* SPDX-License-Identifier: AGPL-3.0-only
|
||||||
|
*/
|
||||||
|
|
||||||
|
export class IndexIDXInstanceHostKey1748104955717 {
|
||||||
|
name = 'IndexIDXInstanceHostKey1748104955717'
|
||||||
|
|
||||||
|
async up(queryRunner) {
|
||||||
|
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_instance_host_key" ON "instance" (((lower(reverse("host")) || '.')::text) text_pattern_ops)`);
|
||||||
|
|
||||||
|
// Flush all cached Linear Scan Plans and redo statistics for expression index
|
||||||
|
// this is important for Postgres to learn that even in highly complex queries, using this index first can reduce the result set significantly
|
||||||
|
await queryRunner.query(`ANALYZE "instance"`);
|
||||||
|
}
|
||||||
|
|
||||||
|
async down(queryRunner) {
|
||||||
|
await queryRunner.query(`DROP INDEX "IDX_instance_host_key"`);
|
||||||
|
}
|
||||||
|
}
|
|
@ -6,6 +6,7 @@
|
||||||
import { Entity, PrimaryColumn, Index, Column } from 'typeorm';
|
import { Entity, PrimaryColumn, Index, Column } from 'typeorm';
|
||||||
import { id } from './util/id.js';
|
import { id } from './util/id.js';
|
||||||
|
|
||||||
|
@Index('IDX_instance_host_key', { synchronize: false })
|
||||||
@Entity('instance')
|
@Entity('instance')
|
||||||
export class MiInstance {
|
export class MiInstance {
|
||||||
@PrimaryColumn(id())
|
@PrimaryColumn(id())
|
||||||
|
|
Loading…
Add table
Reference in a new issue