fix(pgvector): replace hyphens with underscores in table names

This commit is contained in:
reluctantfuturist 2025-03-03 23:27:45 -08:00
parent 07a992ef90
commit c34a2a8ee8

View file

@ -58,7 +58,11 @@ class PGVectorIndex(EmbeddingIndex):
def __init__(self, vector_db: VectorDB, dimension: int, conn): def __init__(self, vector_db: VectorDB, dimension: int, conn):
self.conn = conn self.conn = conn
with conn.cursor(cursor_factory=psycopg2.extras.DictCursor) as cur: with conn.cursor(cursor_factory=psycopg2.extras.DictCursor) as cur:
self.table_name = f"vector_store_{vector_db.identifier}" # Sanitize the table name by replacing hyphens with underscores
# SQL doesn't allow hyphens in table names, and vector_db.identifier may contain hyphens
# when created with patterns like "test-vector-db-{uuid4()}"
sanitized_identifier = vector_db.identifier.replace("-", "_")
self.table_name = f"vector_store_{sanitized_identifier}"
cur.execute( cur.execute(
f""" f"""