Add indices on frequent queries (#12401)

Fixes #12165

Also changed the index naming convention because some were not properly
name and would have caused conflicts in the long run
This commit is contained in:
Félix Malfait
2025-06-02 09:55:45 +02:00
committed by GitHub
parent f6bfec882a
commit 1ef7b7a474
23 changed files with 419 additions and 32 deletions

View File

@ -32,7 +32,7 @@ export class IndexFieldMetadataEntity {
indexMetadata: Relation<IndexMetadataEntity>;
@Column({ nullable: false })
@Index('IndexOnFieldMetadataId')
@Index('IDX_INDEX_FIELD_METADATA_FIELD_METADATA_ID', ['fieldMetadataId'])
fieldMetadataId: string;
@ManyToOne(

View File

@ -2,6 +2,7 @@ import {
Column,
CreateDateColumn,
Entity,
Index,
JoinColumn,
ManyToOne,
OneToMany,
@ -19,11 +20,15 @@ export enum IndexType {
GIN = 'GIN',
}
@Unique('IndexOnNameAndWorkspaceIdAndObjectMetadataUnique', [
@Unique('IDX_INDEX_METADATA_NAME_WORKSPACE_ID_OBJECT_METADATA_ID_UNIQUE', [
'name',
'workspaceId',
'objectMetadataId',
])
@Index('IDX_INDEX_METADATA_WORKSPACE_ID_OBJECT_METADATA_ID', [
'workspaceId',
'objectMetadataId',
])
@Entity('indexMetadata')
export class IndexMetadataEntity {
@PrimaryGeneratedColumn('uuid')