Преглед на файлове

add retry count for search, if retry for more than 3 times, throw exception.

Nian Liu преди 1 година
родител
ревизия
9ca16012b5
променени са 1 файла, в които са добавени 5 реда и са изтрити 0 реда
  1. 5 0
      src/main/java/io/milvus/v2/service/vector/VectorService.java

+ 5 - 0
src/main/java/io/milvus/v2/service/vector/VectorService.java

@@ -77,10 +77,15 @@ public class VectorService extends BaseService {
         SearchRequest searchRequest = vectorUtils.ConvertToGrpcSearchRequest(request);
 
         SearchResults response = milvusServiceBlockingStub.search(searchRequest);
+        int retryCount = 3;
         while (response.getStatus().getCode() == 2200) {
+            if (retryCount == 0) {
+                throw new MilvusClientException(ErrorCode.SERVER_ERROR, "retry search request failed");
+            }
             //https://github.com/milvus-io/milvus/issues/29656
             //issue fix, while the status code is 2200, retry the search request
             response = milvusServiceBlockingStub.search(searchRequest);
+            retryCount--;
         }
         rpcUtils.handleResponse(title, response.getStatus());