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

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


The following commit(s) were added to refs/heads/dev-1.4.0 by this push:
     new 0bdb5c3c1 Fix create ec NPE Exception #4651 (#4652)
0bdb5c3c1 is described below

commit 0bdb5c3c1e0da233e9b388ca2d030c81d0e0c6fc
Author: peacewong <[email protected]>
AuthorDate: Fri Jun 16 21:40:27 2023 +0800

    Fix create ec NPE Exception #4651 (#4652)
---
 .../manager/am/manager/DefaultEngineNodeManager.java       | 11 +++++++----
 .../am/service/engine/DefaultEngineCreateService.java      | 14 ++++++--------
 .../protocol/engine/EngineConnStatusCallbackToAM.java      |  2 --
 3 files changed, 13 insertions(+), 14 deletions(-)

diff --git 
a/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/manager/DefaultEngineNodeManager.java
 
b/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/manager/DefaultEngineNodeManager.java
index 4a0eb457c..0d49165e4 100644
--- 
a/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/manager/DefaultEngineNodeManager.java
+++ 
b/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/manager/DefaultEngineNodeManager.java
@@ -113,11 +113,14 @@ public class DefaultEngineNodeManager implements 
EngineNodeManager {
 
   @Override
   public EngineNode getEngineNodeInfoByDB(EngineNode engineNode) {
-    // 1. 从持久化器中获取EngineNode信息,需要获取Task信息和Status信息,方便后面使用
-    engineNode = 
nodeManagerPersistence.getEngineNode(engineNode.getServiceInstance());
+    EngineNode dbEngineNode = 
nodeManagerPersistence.getEngineNode(engineNode.getServiceInstance());
+    if (null == dbEngineNode) {
+      throw new LinkisRetryException(
+          AMConstant.ENGINE_ERROR_CODE, engineNode + " not exists in db");
+    }
     metricsConverter.fillMetricsToNode(
-        engineNode, nodeMetricManagerPersistence.getNodeMetrics(engineNode));
-    return engineNode;
+        dbEngineNode, 
nodeMetricManagerPersistence.getNodeMetrics(dbEngineNode));
+    return dbEngineNode;
   }
 
   @Override
diff --git 
a/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/service/engine/DefaultEngineCreateService.java
 
b/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/service/engine/DefaultEngineCreateService.java
index 87b6c266d..e8c58e382 100644
--- 
a/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/service/engine/DefaultEngineCreateService.java
+++ 
b/linkis-computation-governance/linkis-manager/linkis-application-manager/src/main/java/org/apache/linkis/manager/am/service/engine/DefaultEngineCreateService.java
@@ -337,11 +337,7 @@ public class DefaultEngineCreateService extends 
AbstractEngineService
   }
 
   private boolean ensuresIdle(EngineNode engineNode, String resourceTicketId) {
-    EngineNode engineNodeInfo =
-        LinkisUtils.tryAndWarnMsg(
-            () -> getEngineNodeManager().getEngineNodeInfoByDB(engineNode),
-            "Failed to from db get engine node info",
-            logger);
+    EngineNode engineNodeInfo = 
getEngineNodeManager().getEngineNodeInfoByDB(engineNode);
     if (null == engineNodeInfo) {
       return false;
     }
@@ -422,11 +418,13 @@ public class DefaultEngineCreateService extends 
AbstractEngineService
       EngineStopRequest stopEngineRequest =
           new EngineStopRequest(engineNode.getServiceInstance(), 
ManagerUtils.getAdminUser());
       engineStopService.asyncStopEngine(stopEngineRequest);
+      if (t instanceof LinkisRetryException) {
+        throw (LinkisRetryException) t;
+      }
       throw new AMErrorException(
           AMConstant.ENGINE_ERROR_CODE,
-          String.format(
-              "Waiting for %s(%s) initialization failure , now stop it.",
-              engineNode, resourceTicketId));
+          String.format("Waiting for %s(%s) initialization failure", 
engineNode, resourceTicketId),
+          t);
     }
     return engineNode;
   }
diff --git 
a/linkis-computation-governance/linkis-manager/linkis-manager-common/src/main/java/org/apache/linkis/manager/common/protocol/engine/EngineConnStatusCallbackToAM.java
 
b/linkis-computation-governance/linkis-manager/linkis-manager-common/src/main/java/org/apache/linkis/manager/common/protocol/engine/EngineConnStatusCallbackToAM.java
index d4c14916f..a8cd8436b 100644
--- 
a/linkis-computation-governance/linkis-manager/linkis-manager-common/src/main/java/org/apache/linkis/manager/common/protocol/engine/EngineConnStatusCallbackToAM.java
+++ 
b/linkis-computation-governance/linkis-manager/linkis-manager-common/src/main/java/org/apache/linkis/manager/common/protocol/engine/EngineConnStatusCallbackToAM.java
@@ -46,8 +46,6 @@ public class EngineConnStatusCallbackToAM extends 
AbstractRetryableProtocol
         + serviceInstance
         + ", status="
         + status
-        + ", initErrorMsg='"
-        + initErrorMsg
         + ", canRetry="
         + canRetry
         + ")";


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

Reply via email to