diff --git a/api/core/rag/datasource/vdb/analyticdb/analyticdb_vector_sql.py b/api/core/rag/datasource/vdb/analyticdb/analyticdb_vector_sql.py index 2df17181a..bb61b71bb 100644 --- a/api/core/rag/datasource/vdb/analyticdb/analyticdb_vector_sql.py +++ b/api/core/rag/datasource/vdb/analyticdb/analyticdb_vector_sql.py @@ -105,9 +105,11 @@ class AnalyticdbVectorBySql: conn.close() self.pool = self._create_connection_pool() with self._get_cursor() as cur: + conn = cur.connection try: cur.execute("CREATE EXTENSION IF NOT EXISTS zhparser;") except Exception as e: + conn.rollback() raise RuntimeError( "Failed to create zhparser extension. Please ensure it is available in your AnalyticDB." ) from e @@ -115,6 +117,7 @@ class AnalyticdbVectorBySql: cur.execute("CREATE TEXT SEARCH CONFIGURATION zh_cn (PARSER = zhparser)") cur.execute("ALTER TEXT SEARCH CONFIGURATION zh_cn ADD MAPPING FOR n,v,a,i,e,l,x WITH simple") except Exception as e: + conn.rollback() if "already exists" not in str(e): raise e cur.execute(