From aa18cc8657bd1dc9709436b0ecd765ce6c620b27 Mon Sep 17 00:00:00 2001 From: Manolo Santos Date: Wed, 11 Dec 2024 12:18:37 +0100 Subject: [PATCH] Update src/raglite/_database.py Co-authored-by: Laurent Sorber --- src/raglite/_database.py | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/raglite/_database.py b/src/raglite/_database.py index 23d3bd5..fefa7f9 100644 --- a/src/raglite/_database.py +++ b/src/raglite/_database.py @@ -289,15 +289,14 @@ def from_chunks( @lru_cache(maxsize=1) -def _get_pgvector_version(session: Session) -> str | None: - """Get pgvector version. - - Returns - ------- - str | None: Version string if pgvector is installed, None otherwise - """ - result = session.execute(text("SELECT extversion FROM pg_extension WHERE extname = 'vector'")) - return result.scalar() +def _pgvector_version(session: Session) -> Version: + try: + result = session.execute(text("SELECT extversion FROM pg_extension WHERE extname = 'vector'")) + pgvector_version = version.parse(result.scalar()) + except Exception as e: + error_message = "Unable to parse pgvector version, is pgvector installed?" + raise ValueError(error_message) from e + return pgvector_version @lru_cache(maxsize=1)