From 3fc03233c093b88412ebd4928ed7a249a7528be5 Mon Sep 17 00:00:00 2001
From: leevh0908 <1213185851@li>
Date: Tue, 29 Oct 2024 23:57:12 +0800
Subject: [PATCH] Milvus vector store: Pass databaseName in DeleteParam for
non-default databases
When using a non-default database, MilvusVectorStore's doDelete method wasn't
passing the specified databaseName in DeleteParam, causing searches to fall back
to the default database where collections couldn't be found. Added explicit
databaseName parameter to fix this issue.
- Add databaseName to DeleteParam builder
- Upgrade milvus-sdk from 2.3.4 to 2.3.5
---
pom.xml | 2 +-
.../org/springframework/ai/vectorstore/MilvusVectorStore.java | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/pom.xml b/pom.xml
index 6c1b661bf..54d9bef64 100644
--- a/pom.xml
+++ b/pom.xml
@@ -200,7 +200,7 @@
23.4.0.24.05
42.7.2
8.13.3
- 2.3.4
+ 2.3.5
2.3.0
0.8.0
2.0.46
diff --git a/vector-stores/spring-ai-milvus-store/src/main/java/org/springframework/ai/vectorstore/MilvusVectorStore.java b/vector-stores/spring-ai-milvus-store/src/main/java/org/springframework/ai/vectorstore/MilvusVectorStore.java
index 7aa809204..6aa08a849 100644
--- a/vector-stores/spring-ai-milvus-store/src/main/java/org/springframework/ai/vectorstore/MilvusVectorStore.java
+++ b/vector-stores/spring-ai-milvus-store/src/main/java/org/springframework/ai/vectorstore/MilvusVectorStore.java
@@ -197,6 +197,7 @@ public class MilvusVectorStore extends AbstractObservationVectorStore implements
idList.stream().map(id -> "'" + id + "'").collect(Collectors.joining(",")));
R status = this.milvusClient.delete(DeleteParam.newBuilder()
+ .withDatabaseName(this.config.databaseName)
.withCollectionName(this.config.collectionName)
.withExpr(deleteExpression)
.build());