This is an automated email from the ASF dual-hosted git repository. fmariani pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
commit 0fffdc33ac1bc156b77de9bd13fea00b6fe35317 Author: Guillaume Nodet <[email protected]> AuthorDate: Mon Mar 23 21:11:06 2026 +0100 Add missing configurable properties to Milvus helpers - MilvusHelperSearch: add offset and consistencyLevel properties (consistencyLevel was hardcoded to STRONG) - MilvusHelperCreateIndex: add indexName property Co-Authored-By: Claude Opus 4.6 <[email protected]> --- .../milvus/helpers/MilvusHelperCreateIndex.java | 23 +++++++++++++--- .../milvus/helpers/MilvusHelperSearch.java | 31 +++++++++++++++++++++- 2 files changed, 50 insertions(+), 4 deletions(-) diff --git a/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperCreateIndex.java b/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperCreateIndex.java index 3f749e802c19..492aded93a52 100644 --- a/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperCreateIndex.java +++ b/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperCreateIndex.java @@ -32,6 +32,7 @@ public class MilvusHelperCreateIndex implements Processor { private String collectionName = "default_collection"; private String vectorFieldName = "embedding"; + private String indexName; private String indexType = "IVF_FLAT"; private String metricType = "COSINE"; private String extraParam = "{\"nlist\": 128}"; @@ -41,14 +42,19 @@ public class MilvusHelperCreateIndex implements Processor { IndexType idxType = IndexType.valueOf(indexType); MetricType metric = MetricType.valueOf(metricType); - CreateIndexParam param = CreateIndexParam.newBuilder() + CreateIndexParam.Builder builder = CreateIndexParam.newBuilder() .withCollectionName(collectionName) .withFieldName(vectorFieldName) .withIndexType(idxType) .withMetricType(metric) .withExtraParam(extraParam) - .withSyncMode(Boolean.TRUE) - .build(); + .withSyncMode(Boolean.TRUE); + + if (indexName != null && !indexName.isEmpty()) { + builder.withIndexName(indexName); + } + + CreateIndexParam param = builder.build(); exchange.getIn().setBody(param); exchange.getIn().setHeader(MilvusHeaders.ACTION, MilvusAction.CREATE_INDEX); @@ -70,6 +76,17 @@ public class MilvusHelperCreateIndex implements Processor { this.vectorFieldName = vectorFieldName; } + public String getIndexName() { + return indexName; + } + + /** + * @param indexName the name to assign to the index (e.g., {@code myVectorIndex}) + */ + public void setIndexName(String indexName) { + this.indexName = indexName; + } + public String getIndexType() { return indexType; } diff --git a/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperSearch.java b/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperSearch.java index e13e184f8bec..20d66307d317 100644 --- a/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperSearch.java +++ b/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperSearch.java @@ -36,6 +36,8 @@ public class MilvusHelperSearch implements Processor { private String collectionName = "default_collection"; private String outputFields = "content"; private String limit = "10"; + private String offset = "0"; + private String consistencyLevel = "STRONG"; private String filter; @SuppressWarnings("unchecked") @@ -55,12 +57,16 @@ public class MilvusHelperSearch implements Processor { } } + long searchOffset = Long.parseLong(offset); + ConsistencyLevelEnum consistency = ConsistencyLevelEnum.valueOf(consistencyLevel); + SearchSimpleParam.Builder builder = SearchSimpleParam.newBuilder() .withCollectionName(collectionName) .withVectors(queryEmbedding) .withLimit(searchLimit) + .withOffset(searchOffset) .withOutputFields(fields) - .withConsistencyLevel(ConsistencyLevelEnum.STRONG); + .withConsistencyLevel(consistency); if (filter != null && !filter.isEmpty()) { builder.withFilter(filter); @@ -103,6 +109,29 @@ public class MilvusHelperSearch implements Processor { this.limit = limit; } + public String getOffset() { + return offset; + } + + /** + * @param offset the number of results to skip as a string (e.g., {@code 0}, {@code 10}) + */ + public void setOffset(String offset) { + this.offset = offset; + } + + public String getConsistencyLevel() { + return consistencyLevel; + } + + /** + * @param consistencyLevel the Milvus {@link io.milvus.common.clientenum.ConsistencyLevelEnum} enum name (e.g., + * {@code STRONG}, {@code BOUNDED}, {@code EVENTUALLY}) + */ + public void setConsistencyLevel(String consistencyLevel) { + this.consistencyLevel = consistencyLevel; + } + public String getFilter() { return filter; }
