From 101a16bc1200f74b395934ac7053aaacd3642314 Mon Sep 17 00:00:00 2001 From: Alex Gleason Date: Tue, 21 May 2024 16:29:36 -0500 Subject: [PATCH] Index the Postgres FTS column --- src/db/migrations/021_pgfts_index.ts | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/db/migrations/021_pgfts_index.ts diff --git a/src/db/migrations/021_pgfts_index.ts b/src/db/migrations/021_pgfts_index.ts new file mode 100644 index 0000000..d18d110 --- /dev/null +++ b/src/db/migrations/021_pgfts_index.ts @@ -0,0 +1,21 @@ +import { Kysely } from 'kysely'; + +import { Conf } from '@/config.ts'; + +export async function up(db: Kysely): Promise { + if (['postgres:', 'postgresql:'].includes(Conf.databaseUrl.protocol!)) { + await db.schema + .createIndex('nostr_pgfts_gin_search_vec') + .ifNotExists() + .on('nostr_pgfts') + .using('gin') + .column('search_vec') + .execute(); + } +} + +export async function down(db: Kysely): Promise { + if (['postgres:', 'postgresql:'].includes(Conf.databaseUrl.protocol!)) { + await db.schema.dropIndex('nostr_pgfts_gin_search_vec').ifExists().execute(); + } +}