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

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

commit b59e159f64db937028267be924b5c1c126ea0137
Author: peacewong <[email protected]>
AuthorDate: Fri Jul 22 17:31:46 2022 +0800

    Modify the locker to judge the executor status
---
 .../executor/execution/AccessibleEngineConnExecution.scala     |  1 +
 .../executor/service/EngineConnTimedLockService.scala          | 10 ++++++++--
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git 
a/linkis-computation-governance/linkis-engineconn/linkis-engineconn-executor/accessible-executor/src/main/scala/org/apache/linkis/engineconn/acessible/executor/execution/AccessibleEngineConnExecution.scala
 
b/linkis-computation-governance/linkis-engineconn/linkis-engineconn-executor/accessible-executor/src/main/scala/org/apache/linkis/engineconn/acessible/executor/execution/AccessibleEngineConnExecution.scala
index 9dd89b775..a0b203ce3 100644
--- 
a/linkis-computation-governance/linkis-engineconn/linkis-engineconn-executor/accessible-executor/src/main/scala/org/apache/linkis/engineconn/acessible/executor/execution/AccessibleEngineConnExecution.scala
+++ 
b/linkis-computation-governance/linkis-engineconn/linkis-engineconn-executor/accessible-executor/src/main/scala/org/apache/linkis/engineconn/acessible/executor/execution/AccessibleEngineConnExecution.scala
@@ -98,6 +98,7 @@ class AccessibleEngineConnExecution extends 
EngineConnExecution with Logging {
             accessibleExecutor.updateLastActivityTime()
           } else {
             logger.warn(s"${accessibleExecutor.getId} has not been used for 
$maxFreeTimeStr, now try to shutdown it.")
+            accessibleExecutor.tryShutdown()
             requestManagerReleaseExecutor(" idle release")
             ShutdownHook.getShutdownHook.notifyStop()
           }
diff --git 
a/linkis-computation-governance/linkis-engineconn/linkis-engineconn-executor/accessible-executor/src/main/scala/org/apache/linkis/engineconn/acessible/executor/service/EngineConnTimedLockService.scala
 
b/linkis-computation-governance/linkis-engineconn/linkis-engineconn-executor/accessible-executor/src/main/scala/org/apache/linkis/engineconn/acessible/executor/service/EngineConnTimedLockService.scala
index 86baf54b6..bbbae2c51 100644
--- 
a/linkis-computation-governance/linkis-engineconn/linkis-engineconn-executor/accessible-executor/src/main/scala/org/apache/linkis/engineconn/acessible/executor/service/EngineConnTimedLockService.scala
+++ 
b/linkis-computation-governance/linkis-engineconn/linkis-engineconn-executor/accessible-executor/src/main/scala/org/apache/linkis/engineconn/acessible/executor/service/EngineConnTimedLockService.scala
@@ -89,8 +89,14 @@ class EngineConnTimedLockService extends LockService with 
Logging {
     // Lock is binded to engineconn, so choose default executor
     ExecutorManager.getInstance.getReportExecutor match {
       case accessibleExecutor: AccessibleExecutor =>
-        logger.debug("try to lock for executor state is " + 
accessibleExecutor.getStatus)
-        logger.debug("try to lock for executor id is " + 
accessibleExecutor.getId)
+        if (logger.isDebugEnabled) {
+          logger.debug("try to lock for executor state is " + 
accessibleExecutor.getStatus)
+          logger.debug("try to lock for executor id is " + 
accessibleExecutor.getId)
+        }
+        if (NodeStatus.isCompleted(accessibleExecutor.getStatus)) {
+          logger.error(s"Cannot to lock completed 
${accessibleExecutor.getStatus} stats executor")
+          return None
+        }
         if (null == engineConnLock) {
           engineConnLock = new EngineConnTimedLock(timeout)
           
ExecutorListenerBusContext.getExecutorListenerBusContext().getEngineConnAsyncListenerBus.addListener(engineConnLock)


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

Reply via email to