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

wenjun pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git


The following commit(s) were added to refs/heads/dev by this push:
     new c110f4acae Refresh server startup time when recovery from waiting 
(#11595)
c110f4acae is described below

commit c110f4acae82ca80abd93a0cc096a18a3cf0f6d1
Author: Wenjun Ruan <[email protected]>
AuthorDate: Mon Aug 22 22:36:49 2022 +0800

    Refresh server startup time when recovery from waiting (#11595)
---
 .../dolphinscheduler/common/lifecycle/ServerLifeCycleManager.java  | 7 +++++++
 .../org/apache/dolphinscheduler/server/registry/HeartBeatTask.java | 1 +
 2 files changed, 8 insertions(+)

diff --git 
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/lifecycle/ServerLifeCycleManager.java
 
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/lifecycle/ServerLifeCycleManager.java
index 1e2a93f638..3c625d70e7 100644
--- 
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/lifecycle/ServerLifeCycleManager.java
+++ 
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/lifecycle/ServerLifeCycleManager.java
@@ -24,6 +24,12 @@ public class ServerLifeCycleManager {
 
     private static volatile ServerStatus serverStatus = ServerStatus.RUNNING;
 
+    private static long serverStartupTime = System.currentTimeMillis();
+
+    public static long getServerStartupTime() {
+        return serverStartupTime;
+    }
+
     public static boolean isRunning() {
         return serverStatus == ServerStatus.RUNNING;
     }
@@ -61,6 +67,7 @@ public class ServerLifeCycleManager {
         if (serverStatus != ServerStatus.WAITING) {
             throw new ServerLifeCycleException("The current server status is 
not waiting, cannot recover form waiting");
         }
+        serverStartupTime = System.currentTimeMillis();
         serverStatus = ServerStatus.RUNNING;
     }
 
diff --git 
a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/registry/HeartBeatTask.java
 
b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/registry/HeartBeatTask.java
index b146a25482..495d48e342 100644
--- 
a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/registry/HeartBeatTask.java
+++ 
b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/registry/HeartBeatTask.java
@@ -74,6 +74,7 @@ public class HeartBeatTask implements Runnable {
             if (!ServerLifeCycleManager.isRunning()) {
                 return;
             }
+            
heartBeat.setStartupTime(ServerLifeCycleManager.getServerStartupTime());
             // update waiting task count
             heartBeat.setWorkerWaitingTaskCount(workerWaitingTaskCount);
 

Reply via email to