2020package io .milvus .client ;
2121
2222import com .google .common .collect .Lists ;
23- import com .google .common .util .concurrent .*;
23+ import com .google .common .util .concurrent .FutureCallback ;
24+ import com .google .common .util .concurrent .Futures ;
25+ import com .google .common .util .concurrent .ListenableFuture ;
26+ import com .google .common .util .concurrent .MoreExecutors ;
2427import com .google .gson .reflect .TypeToken ;
2528import io .grpc .StatusRuntimeException ;
2629import io .milvus .common .utils .GTsDict ;
2730import io .milvus .common .utils .JsonUtils ;
2831import io .milvus .common .utils .VectorUtils ;
29- import io .milvus .exception .*;
32+ import io .milvus .exception .ClientNotConnectedException ;
33+ import io .milvus .exception .IllegalResponseException ;
34+ import io .milvus .exception .ServerException ;
3035import io .milvus .grpc .*;
3136import io .milvus .orm .iterator .QueryIterator ;
37+ import io .milvus .orm .iterator .RpcStubWrapper ;
3238import io .milvus .orm .iterator .SearchIterator ;
3339import io .milvus .param .*;
34- import io .milvus .param .alias .*;
35- import io .milvus .param .bulkinsert .*;
40+ import io .milvus .param .alias .AlterAliasParam ;
41+ import io .milvus .param .alias .CreateAliasParam ;
42+ import io .milvus .param .alias .DropAliasParam ;
43+ import io .milvus .param .alias .ListAliasesParam ;
44+ import io .milvus .param .bulkinsert .BulkInsertParam ;
45+ import io .milvus .param .bulkinsert .GetBulkInsertStateParam ;
46+ import io .milvus .param .bulkinsert .ListBulkInsertTasksParam ;
3647import io .milvus .param .collection .*;
3748import io .milvus .param .control .*;
38- import io .milvus .param .credential .*;
49+ import io .milvus .param .credential .CreateCredentialParam ;
50+ import io .milvus .param .credential .DeleteCredentialParam ;
51+ import io .milvus .param .credential .ListCredUsersParam ;
52+ import io .milvus .param .credential .UpdateCredentialParam ;
3953import io .milvus .param .dml .*;
4054import io .milvus .param .highlevel .collection .CreateSimpleCollectionParam ;
4155import io .milvus .param .highlevel .collection .ListCollectionsParam ;
@@ -413,7 +427,7 @@ private void handleResponse(String requestInfo, io.milvus.grpc.Status status) {
413427 logDebug ("{} successfully!" , requestInfo );
414428 }
415429
416- ///////////////////// API implementation //////////////////////
430+ /// ////////////////// API implementation //////////////////////
417431 @ Override
418432 public R <Boolean > hasCollection (@ NonNull HasCollectionParam requestParam ) {
419433 if (!clientIsReady ()) {
@@ -541,9 +555,9 @@ public R<RpcStatus> alterDatabase(AlterDatabaseParam requestParam) {
541555 try {
542556 List <KeyValuePair > propertiesList = ParamUtils .AssembleKvPair (requestParam .getProperties ());
543557 AlterDatabaseRequest alterDatabaseRequest = AlterDatabaseRequest .newBuilder ()
544- .setDbName (requestParam .getDatabaseName ())
545- .addAllProperties (propertiesList )
546- .build ();
558+ .setDbName (requestParam .getDatabaseName ())
559+ .addAllProperties (propertiesList )
560+ .build ();
547561
548562 Status response = blockingStub ().alterDatabase (alterDatabaseRequest );
549563 handleResponse (title , response );
@@ -567,8 +581,8 @@ public R<DescribeDatabaseResponse> describeDatabase(DescribeDatabaseParam reques
567581 String title = String .format ("DescribeDatabaseRequest databaseName:%s" , requestParam .getDatabaseName ());
568582 try {
569583 DescribeDatabaseRequest describeDatabaseRequest = DescribeDatabaseRequest .newBuilder ()
570- .setDbName (requestParam .getDatabaseName ())
571- .build ();
584+ .setDbName (requestParam .getDatabaseName ())
585+ .build ();
572586
573587 DescribeDatabaseResponse response = blockingStub ().describeDatabase (describeDatabaseRequest );
574588 handleResponse (title , response .getStatus ());
@@ -1351,7 +1365,8 @@ public R<RpcStatus> createIndex(@NonNull CreateIndexParam requestParam) {
13511365 Map <String , String > extraParams = requestParam .getExtraParam ();
13521366 for (Map .Entry <String , String > entry : extraParams .entrySet ()) {
13531367 if (entry .getKey ().equals (Constant .PARAMS )) {
1354- Map <String , String > tempParams = JsonUtils .fromJson (entry .getValue (), new TypeToken <Map <String , String >>() {}.getType ());
1368+ Map <String , String > tempParams = JsonUtils .fromJson (entry .getValue (), new TypeToken <Map <String , String >>() {
1369+ }.getType ());
13551370 for (String key : tempParams .keySet ()) {
13561371 createIndexRequestBuilder .addExtraParams (KeyValuePair .newBuilder ()
13571372 .setKey (key )
@@ -3185,7 +3200,7 @@ public R<RpcStatus> updateResourceGroups(UpdateResourceGroupsParam requestParam)
31853200 }
31863201 }
31873202
3188- ///////////////////// High Level API//////////////////////
3203+ /// ////////////////// High Level API//////////////////////
31893204 @ Override
31903205 public R <RpcStatus > createCollection (CreateSimpleCollectionParam requestParam ) {
31913206 if (!clientIsReady ()) {
@@ -3197,21 +3212,21 @@ public R<RpcStatus> createCollection(CreateSimpleCollectionParam requestParam) {
31973212 try {
31983213 // step1: create collection
31993214 R <RpcStatus > createCollectionStatus = createCollection (requestParam .getCreateCollectionParam ());
3200- if (!Objects .equals (createCollectionStatus .getStatus (), R .success ().getStatus ())){
3215+ if (!Objects .equals (createCollectionStatus .getStatus (), R .success ().getStatus ())) {
32013216 logError ("CreateCollection failed: {}" , createCollectionStatus .getException ().getMessage ());
32023217 return R .failed (createCollectionStatus .getException ());
32033218 }
32043219
32053220 // step2: create index
32063221 R <RpcStatus > createIndexStatus = createIndex (requestParam .getCreateIndexParam ());
3207- if (!Objects .equals (createIndexStatus .getStatus (), R .success ().getStatus ())){
3222+ if (!Objects .equals (createIndexStatus .getStatus (), R .success ().getStatus ())) {
32083223 logError ("CreateIndex failed: {}" , createIndexStatus .getException ().getMessage ());
32093224 return R .failed (createIndexStatus .getException ());
32103225 }
32113226
32123227 // step3: load collection
32133228 R <RpcStatus > loadCollectionStatus = loadCollection (requestParam .getLoadCollectionParam ());
3214- if (!Objects .equals (loadCollectionStatus .getStatus (), R .success ().getStatus ())){
3229+ if (!Objects .equals (loadCollectionStatus .getStatus (), R .success ().getStatus ())) {
32153230 logError ("LoadCollection failed: {}" , loadCollectionStatus .getException ().getMessage ());
32163231 return R .failed (loadCollectionStatus .getException ());
32173232 }
@@ -3234,10 +3249,10 @@ public R<ListCollectionsResponse> listCollections(ListCollectionsParam requestPa
32343249 }
32353250 logDebug (requestParam .toString ());
32363251 String title = "ListCollectionsRequest" ;
3237-
3252+
32383253 try {
32393254 R <ShowCollectionsResponse > response = showCollections (requestParam .getShowCollectionsParam ());
3240- if (!Objects .equals (response .getStatus (), R .success ().getStatus ())){
3255+ if (!Objects .equals (response .getStatus (), R .success ().getStatus ())) {
32413256 logError ("ListCollections failed: {}" , response .getException ().getMessage ());
32423257 return R .failed (response .getException ());
32433258 }
@@ -3261,10 +3276,10 @@ public R<InsertResponse> insert(InsertRowsParam requestParam) {
32613276 }
32623277 logDebug (requestParam .toString ());
32633278 String title = "InsertRowsRequest" ;
3264-
3279+
32653280 try {
32663281 R <MutationResult > response = insert (requestParam .getInsertParam ());
3267- if (!Objects .equals (response .getStatus (), R .success ().getStatus ())){
3282+ if (!Objects .equals (response .getStatus (), R .success ().getStatus ())) {
32683283 logError ("Insert failed: {}" , response .getException ().getMessage ());
32693284 return R .failed (response .getException ());
32703285 }
@@ -3394,7 +3409,7 @@ public R<QueryResponse> query(QuerySimpleParam requestParam) {
33943409 .withConsistencyLevel (requestParam .getConsistencyLevel ())
33953410 .build ();
33963411 R <QueryResults > response = query (queryParam );
3397- if (!Objects .equals (response .getStatus (), R .success ().getStatus ())){
3412+ if (!Objects .equals (response .getStatus (), R .success ().getStatus ())) {
33983413 logError ("Query failed: {}" , response .getException ().getMessage ());
33993414 return R .failed (response .getException ());
34003415 }
@@ -3452,7 +3467,7 @@ public R<SearchResponse> search(SearchSimpleParam requestParam) {
34523467
34533468 // search
34543469 R <SearchResults > response = search (searchParam );
3455- if (!Objects .equals (response .getStatus (), R .success ().getStatus ())){
3470+ if (!Objects .equals (response .getStatus (), R .success ().getStatus ())) {
34563471 logError ("Search failed: {}" , response .getException ().getMessage ());
34573472 return R .failed (response .getException ());
34583473 }
@@ -3483,7 +3498,8 @@ public R<QueryIterator> queryIterator(QueryIteratorParam requestParam) {
34833498 return R .failed (descResp .getException ());
34843499 }
34853500 DescCollResponseWrapper descCollResponseWrapper = new DescCollResponseWrapper (descResp .getData ());
3486- QueryIterator queryIterator = new QueryIterator (requestParam , this .blockingStub (), descCollResponseWrapper .getPrimaryField ());
3501+ // for MilvusClientV1, we don't support to set rpcDeadlineMs for iterator, rpcDeadlineMs is always 0(no deadline)
3502+ QueryIterator queryIterator = new QueryIterator (requestParam , new RpcStubWrapper (this .blockingStub (), 0L ), descCollResponseWrapper .getPrimaryField ());
34873503 return R .success (queryIterator );
34883504 }
34893505
@@ -3498,11 +3514,12 @@ public R<SearchIterator> searchIterator(SearchIteratorParam requestParam) {
34983514 return R .failed (descResp .getException ());
34993515 }
35003516 DescCollResponseWrapper descCollResponseWrapper = new DescCollResponseWrapper (descResp .getData ());
3501- SearchIterator searchIterator = new SearchIterator (requestParam , this .blockingStub (), descCollResponseWrapper .getPrimaryField ());
3517+ // for MilvusClientV1, we don't support to set rpcDeadlineMs for iterator, rpcDeadlineMs is always 0(no deadline)
3518+ SearchIterator searchIterator = new SearchIterator (requestParam , new RpcStubWrapper (this .blockingStub (), 0L ), descCollResponseWrapper .getPrimaryField ());
35023519 return R .success (searchIterator );
35033520 }
35043521
3505- ///////////////////// Log Functions//////////////////////
3522+ /// ////////////////// Log Functions//////////////////////
35063523 protected void logDebug (String msg , Object ... params ) {
35073524 if (logLevel .ordinal () <= LogLevel .Debug .ordinal ()) {
35083525 logger .debug (msg , params );
0 commit comments