From 857a3648a3643ec8cb5b044432f37630472d21bd Mon Sep 17 00:00:00 2001 From: Untone Date: Sun, 25 Feb 2024 16:12:08 +0300 Subject: [PATCH] pgtrgm-add --- services/db.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/services/db.py b/services/db.py index 2f5c3a22..e098c8cc 100644 --- a/services/db.py +++ b/services/db.py @@ -115,7 +115,18 @@ def cache_method(cache_key: str): inspector = inspect(engine) +def add_pg_trgm_extension_if_not_exists(): + with local_session() as session: + result = session.execute("SELECT 1 FROM pg_extension WHERE extname = 'pg_trgm';") + if not result.scalar(): + session.execute("CREATE EXTENSION IF NOT EXISTS pg_trgm;") + print("pg_trgm extension added successfully.") + else: + print("pg_trgm extension already exists.") + + def create_fts_index(table_name, fts_index_name): + add_pg_trgm_extension_if_not_exists() logger.info(f'Full text index for {table_name}...') authors_indexes = inspector.get_indexes(table_name) author_fts_index_exists = any(