This is an automated email from the ASF dual-hosted git repository.

casion pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/linkis.git

commit 7440203897d2cf5ea73f51c8b757e3643670bcf3
Author: peacewong <[email protected]>
AuthorDate: Wed Jul 26 21:15:08 2023 +0800

    fix reuse do not exit bug
---
 .../linkis/manager/am/service/engine/DefaultEngineReuseService.java  | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git 
a/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/service/engine/DefaultEngineReuseService.java
 
b/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/service/engine/DefaultEngineReuseService.java
index 53c4fd3f1..221df4b93 100644
--- 
a/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/service/engine/DefaultEngineReuseService.java
+++ 
b/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/service/engine/DefaultEngineReuseService.java
@@ -165,7 +165,6 @@ public class DefaultEngineReuseService extends 
AbstractEngineService implements
     EngineNode[] engineScoreList = 
getEngineNodeManager().getEngineNodes(scoreServiceInstances);
 
     List<EngineNode> engines = Lists.newArrayList();
-    int count = 1;
     long timeout =
         engineReuseRequest.getTimeOut() <= 0
             ? AMConfiguration.ENGINE_REUSE_MAX_TIME.getValue().toLong()
@@ -177,8 +176,9 @@ public class DefaultEngineReuseService extends 
AbstractEngineService implements
 
     long startTime = System.currentTimeMillis();
     try {
+      MutablePair<Integer, Integer> limitPair = MutablePair.of(1, reuseLimit);
       LinkisUtils.waitUntil(
-          () -> selectEngineToReuse(MutablePair.of(count, reuseLimit), 
engines, engineScoreList),
+          () -> selectEngineToReuse(limitPair, engines, engineScoreList),
           Duration.ofMillis(timeout));
     } catch (TimeoutException e) {
       throw new LinkisRetryException(
@@ -226,6 +226,7 @@ public class DefaultEngineReuseService extends 
AbstractEngineService implements
           AMConstant.ENGINE_ERROR_CODE,
           "Engine reuse exceeds limit: " + count2reuseLimit.getRight());
     }
+    count2reuseLimit.setLeft(count2reuseLimit.getLeft() + 1);
     Optional<Node> choseNode = nodeSelector.choseNode(engineScoreList);
     if (!choseNode.isPresent()) {
       throw new LinkisRetryException(AMConstant.ENGINE_ERROR_CODE, "No engine 
can be reused");


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to