From cc802afaf4162b70cd258fd76554f7744ab5b3fe Mon Sep 17 00:00:00 2001 From: Georgios Andrianakis Date: Mon, 8 Jul 2024 14:52:29 +0300 Subject: [PATCH] Don't run CREATE EXTENSION IF NOT EXISTS vector in prod mode Closes: #728 --- .../langchain4j/pgvector/PgVectorAgroalPoolInterceptor.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/embedding-stores/pgvector/runtime/src/main/java/io/quarkiverse/langchain4j/pgvector/PgVectorAgroalPoolInterceptor.java b/embedding-stores/pgvector/runtime/src/main/java/io/quarkiverse/langchain4j/pgvector/PgVectorAgroalPoolInterceptor.java index 4f573bea9..340cf3d7f 100644 --- a/embedding-stores/pgvector/runtime/src/main/java/io/quarkiverse/langchain4j/pgvector/PgVectorAgroalPoolInterceptor.java +++ b/embedding-stores/pgvector/runtime/src/main/java/io/quarkiverse/langchain4j/pgvector/PgVectorAgroalPoolInterceptor.java @@ -7,6 +7,7 @@ import com.pgvector.PGvector; import io.agroal.api.AgroalPoolInterceptor; +import io.quarkus.runtime.configuration.ProfileManager; /** * PgVectorAgroalPoolInterceptor intercept connection creation and add needed settings for pgvector @@ -16,7 +17,9 @@ public class PgVectorAgroalPoolInterceptor implements AgroalPoolInterceptor { @Override public void onConnectionCreate(Connection connection) { try (Statement statement = connection.createStatement()) { - statement.executeUpdate("CREATE EXTENSION IF NOT EXISTS vector"); + if (ProfileManager.getLaunchMode().isDevOrTest()) { + statement.executeUpdate("CREATE EXTENSION IF NOT EXISTS vector"); + } PGvector.addVectorType(connection); } catch (SQLException exception) { if (exception.getMessage().contains("could not open extension control file")) {