You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@linkis.apache.org by ca...@apache.org on 2023/06/16 13:40:32 UTC

[linkis] branch dev-1.4.0 updated: Fix create ec NPE Exception #4651 (#4652)

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 <wp...@gmail.com>
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: commits-unsubscribe@linkis.apache.org
For additional commands, e-mail: commits-help@linkis.apache.org