From 5f7ef3ad159ea8a84bfcfd076596afbb3c4dcab5 Mon Sep 17 00:00:00 2001 From: yhmo Date: Thu, 20 Nov 2025 19:03:36 +0800 Subject: [PATCH] Add db_name parameter for listImportJobs() Signed-off-by: yhmo --- .../bulkwriter/BulkWriterRemoteExample.java | 31 +++++++++++++++++-- .../list/MilvusListImportJobsRequest.java | 20 ++++++++++++ 2 files changed, 49 insertions(+), 2 deletions(-) diff --git a/examples/src/main/java/io/milvus/v2/bulkwriter/BulkWriterRemoteExample.java b/examples/src/main/java/io/milvus/v2/bulkwriter/BulkWriterRemoteExample.java index d022be5b2..bfde2d125 100644 --- a/examples/src/main/java/io/milvus/v2/bulkwriter/BulkWriterRemoteExample.java +++ b/examples/src/main/java/io/milvus/v2/bulkwriter/BulkWriterRemoteExample.java @@ -48,6 +48,8 @@ import io.milvus.v2.common.DataType; import io.milvus.v2.common.IndexParam; import io.milvus.v2.service.collection.request.*; +import io.milvus.v2.service.database.request.CreateDatabaseReq; +import io.milvus.v2.service.database.response.ListDatabasesResp; import io.milvus.v2.service.index.request.CreateIndexReq; import io.milvus.v2.service.vector.request.QueryReq; import io.milvus.v2.service.vector.response.QueryResp; @@ -132,6 +134,7 @@ public static class CloudImportConsts { public static final String OBJECT_SECRET_KEY = "_your_storage_secret_key_"; } + private static final String DATABASE_NAME = "java_sdk_db"; private static final String SIMPLE_COLLECTION_NAME = "java_sdk_bulkwriter_simple_v2"; private static final String ALL_TYPES_COLLECTION_NAME = "java_sdk_bulkwriter_all_v2"; private static final Integer DIM = 512; @@ -163,6 +166,18 @@ private static void createConnection() { .password(PASSWORD) .build()); System.out.println("\nConnected"); + + ListDatabasesResp dbs = milvusClient.listDatabases(); + if (!dbs.getDatabaseNames().contains(DATABASE_NAME)) { + milvusClient.createDatabase(CreateDatabaseReq.builder() + .databaseName(DATABASE_NAME) + .build()); + try { + milvusClient.useDatabase(DATABASE_NAME); + } catch (Exception e) { + System.out.println("Unable to switch database, error: " + e); + } + } } private static void exampleSimpleCollection(List fileTypes) throws Exception { @@ -460,6 +475,7 @@ private static void callBulkInsert(List> batchFiles) throws Interru options.put("sep", "|"); // this option only take effect for CSV MilvusImportRequest milvusImportRequest = MilvusImportRequest.builder() .collectionName(ALL_TYPES_COLLECTION_NAME) + .dbName(DATABASE_NAME) .files(batchFiles) .apiKey(USER_NAME + ":" + PASSWORD) .options(options) @@ -472,7 +488,9 @@ private static void callBulkInsert(List> batchFiles) throws Interru System.out.println("Create a bulkInert task, job id: " + jobId); System.out.println("\n===================== listBulkInsertJobs() ===================="); - MilvusListImportJobsRequest listImportJobsRequest = MilvusListImportJobsRequest.builder().collectionName(ALL_TYPES_COLLECTION_NAME) + MilvusListImportJobsRequest listImportJobsRequest = MilvusListImportJobsRequest.builder() + .collectionName(ALL_TYPES_COLLECTION_NAME) + .dbName(DATABASE_NAME) .apiKey(USER_NAME + ":" + PASSWORD) .build(); String listImportJobsResult = BulkImportUtils.listImportJobs(url, listImportJobsRequest); @@ -560,11 +578,15 @@ private static void createCollection(String collectionName, CreateCollectionReq. CreateCollectionReq requestCreate = CreateCollectionReq.builder() .collectionName(collectionName) + .databaseName(DATABASE_NAME) .collectionSchema(collectionSchema) .consistencyLevel(ConsistencyLevel.BOUNDED) .build(); - milvusClient.dropCollection(DropCollectionReq.builder().collectionName(collectionName).build()); + milvusClient.dropCollection(DropCollectionReq.builder() + .collectionName(collectionName) + .databaseName(DATABASE_NAME) + .build()); milvusClient.createCollection(requestCreate); System.out.printf("Collection %s created%n", collectionName); @@ -762,11 +784,13 @@ private static void createIndex(CreateCollectionReq.CollectionSchema collectionS } milvusClient.createIndex(CreateIndexReq.builder() .collectionName(ALL_TYPES_COLLECTION_NAME) + .databaseName(DATABASE_NAME) .indexParams(indexes) .build()); milvusClient.loadCollection(LoadCollectionReq.builder() .collectionName(ALL_TYPES_COLLECTION_NAME) + .databaseName(DATABASE_NAME) .build()); } @@ -778,6 +802,7 @@ private static void loadCollection() { // force the new segments to be loaded into memory. milvusClient.refreshLoad(RefreshLoadReq.builder() .collectionName(ALL_TYPES_COLLECTION_NAME) + .databaseName(DATABASE_NAME) .build()); System.out.println("Collection row number: " + getCollectionRowCount()); } @@ -787,6 +812,7 @@ private static List query(String expr, List outpu checkMilvusClientIfExist(); QueryReq test = QueryReq.builder() .collectionName(ALL_TYPES_COLLECTION_NAME) + .databaseName(DATABASE_NAME) .filter(expr) .outputFields(outputFields) .consistencyLevel(ConsistencyLevel.STRONG) @@ -802,6 +828,7 @@ private static Long getCollectionRowCount() { // Get row count, set ConsistencyLevel.STRONG to sync the data to query node so that data is visible QueryResp countR = milvusClient.query(QueryReq.builder() .collectionName(ALL_TYPES_COLLECTION_NAME) + .databaseName(DATABASE_NAME) .filter("") .outputFields(Collections.singletonList("count(*)")) .consistencyLevel(ConsistencyLevel.STRONG) diff --git a/sdk-bulkwriter/src/main/java/io/milvus/bulkwriter/request/list/MilvusListImportJobsRequest.java b/sdk-bulkwriter/src/main/java/io/milvus/bulkwriter/request/list/MilvusListImportJobsRequest.java index fd6a7aef8..92a182820 100644 --- a/sdk-bulkwriter/src/main/java/io/milvus/bulkwriter/request/list/MilvusListImportJobsRequest.java +++ b/sdk-bulkwriter/src/main/java/io/milvus/bulkwriter/request/list/MilvusListImportJobsRequest.java @@ -22,6 +22,9 @@ public class MilvusListImportJobsRequest extends BaseListImportJobsRequest { private static final long serialVersionUID = 8957739122547766268L; private String collectionName; + // this parameter "dbName" will be converted to JSON and passed to server + // milvus http server requires "dbName", not "databaseName" + private String dbName; protected MilvusListImportJobsRequest() { } @@ -33,6 +36,7 @@ protected MilvusListImportJobsRequest(String collectionName) { protected MilvusListImportJobsRequest(MilvusListImportJobsRequestBuilder builder) { super(builder); this.collectionName = builder.collectionName; + this.dbName = builder.dbName; } public String getCollectionName() { @@ -43,10 +47,19 @@ public void setCollectionName(String collectionName) { this.collectionName = collectionName; } + public String getDbName() { + return dbName; + } + + public void setDbName(String dbName) { + this.dbName = dbName; + } + @Override public String toString() { return "MilvusListImportJobsRequest{" + "collectionName='" + collectionName + '\'' + + "dbName='" + dbName + '\'' + '}'; } @@ -56,9 +69,11 @@ public static MilvusListImportJobsRequestBuilder builder() { public static class MilvusListImportJobsRequestBuilder extends BaseListImportJobsRequestBuilder { private String collectionName; + private String dbName; private MilvusListImportJobsRequestBuilder() { this.collectionName = ""; + this.dbName = ""; } public MilvusListImportJobsRequestBuilder collectionName(String collectionName) { @@ -66,6 +81,11 @@ public MilvusListImportJobsRequestBuilder collectionName(String collectionName) return this; } + public MilvusListImportJobsRequestBuilder dbName(String dbName) { + this.dbName = dbName; + return this; + } + public MilvusListImportJobsRequest build() { return new MilvusListImportJobsRequest(this); }