You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@linkis.apache.org by al...@apache.org on 2022/03/09 09:22:36 UTC

[incubator-linkis] 09/09: Optimize code

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

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

commit 33090ab25039ff76472204f92fcfdff5de342984
Author: peacewong <wp...@gmail.com>
AuthorDate: Wed Mar 9 16:22:24 2022 +0800

    Optimize code
---
 .../org/apache/linkis/entrance/job/EntranceExecutionJob.java   |  5 +++++
 .../linkis/entrance/persistence/QueryPersistenceManager.java   |  1 -
 .../org/apache/linkis/entrance/restful/EntranceRestfulApi.java |  5 ++++-
 .../main/scala/org/apache/linkis/entrance/EntranceServer.scala | 10 +++++-----
 .../main/scala/org/apache/linkis/entrance/log/LogManager.scala |  2 +-
 .../apache/linkis/resourcemanager/restful/RMMonitorRest.scala  |  4 ++--
 6 files changed, 17 insertions(+), 10 deletions(-)

diff --git a/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/job/EntranceExecutionJob.java b/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/job/EntranceExecutionJob.java
index 1aaa2cb..6e0f70c 100644
--- a/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/job/EntranceExecutionJob.java
+++ b/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/job/EntranceExecutionJob.java
@@ -54,6 +54,7 @@ public class EntranceExecutionJob extends EntranceJob implements LogHandler {
 
     private LogReader logReader;
     private LogWriter logWriter;
+    private Object logWriterLocker = new Object();
     private WebSocketCacheLogReader webSocketCacheLogReader;
     private WebSocketLogWriter webSocketLogWriter;
     private static final Logger logger = LoggerFactory.getLogger(EntranceExecutionJob.class);
@@ -64,6 +65,10 @@ public class EntranceExecutionJob extends EntranceJob implements LogHandler {
         this.persistenceManager = persistenceManager;
     }
 
+    public Object getLogWriterLocker() {
+        return logWriterLocker;
+    }
+
     @Override
     public void setLogReader(LogReader logReader) {
         this.logReader = logReader;
diff --git a/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/persistence/QueryPersistenceManager.java b/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/persistence/QueryPersistenceManager.java
index f9c9881..08afdb5 100644
--- a/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/persistence/QueryPersistenceManager.java
+++ b/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/persistence/QueryPersistenceManager.java
@@ -173,7 +173,6 @@ public class QueryPersistenceManager extends PersistenceManager {
 
     @Override
     public void onJobInited(Job job) {
-        updateJobStatus(job);
         cliHeartbeatMonitor.registerIfCliJob(job);
     }
 
diff --git a/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/restful/EntranceRestfulApi.java b/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/restful/EntranceRestfulApi.java
index 56b6dd5..0a02a80 100644
--- a/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/restful/EntranceRestfulApi.java
+++ b/linkis-computation-governance/linkis-entrance/src/main/java/org/apache/linkis/entrance/restful/EntranceRestfulApi.java
@@ -463,7 +463,10 @@ public class EntranceRestfulApi implements EntranceRestfulRemote {
 
     @Override
     @RequestMapping(path = "/killJobs", method = RequestMethod.POST)
-    public Message killJobs(HttpServletRequest req, @RequestBody JsonNode jsonNode, @PathVariable("id") String strongExecId) {
+    public Message killJobs(
+            HttpServletRequest req,
+            @RequestBody JsonNode jsonNode,
+            @PathVariable("id") String strongExecId) {
         JsonNode idNode = jsonNode.get("idList");
         JsonNode taskIDNode = jsonNode.get("taskIDList");
         ArrayList<Long> waitToForceKill = new ArrayList<>();
diff --git a/linkis-computation-governance/linkis-entrance/src/main/scala/org/apache/linkis/entrance/EntranceServer.scala b/linkis-computation-governance/linkis-entrance/src/main/scala/org/apache/linkis/entrance/EntranceServer.scala
index 2eb3bb9..33f33d5 100644
--- a/linkis-computation-governance/linkis-entrance/src/main/scala/org/apache/linkis/entrance/EntranceServer.scala
+++ b/linkis-computation-governance/linkis-entrance/src/main/scala/org/apache/linkis/entrance/EntranceServer.scala
@@ -102,14 +102,14 @@ abstract class EntranceServer extends Logging {
         t => logger.error("Failed to write init log, reason: ", t)
       }
 
+      /**
+       * job.afterStateChanged() method is only called in job.run(), and job.run() is called only after job is scheduled
+       * so it suggest that we lack a hook for job init, currently we call this to trigger JobListener.onJobinit()
+       * */
+      Utils.tryAndWarn(job.getJobListener.foreach(_.onJobInited(job)))
       getEntranceContext.getOrCreateScheduler().submit(job)
       val msg = s"Job with jobId : ${job.getId} and execID : ${job.getId()} submitted "
       logger.info(msg)
-      /**
-        * job.afterStateChanged() method is only called in job.run(), and job.run() is called only after job is scheduled
-        * so it suggest that we lack a hook for job init, currently we call this to trigger JobListener.onJobinit()
-        * */
-      job.getJobListener.foreach(_.onJobInited(job))
 
       job match {
         case entranceJob: EntranceJob =>
diff --git a/linkis-computation-governance/linkis-entrance/src/main/scala/org/apache/linkis/entrance/log/LogManager.scala b/linkis-computation-governance/linkis-entrance/src/main/scala/org/apache/linkis/entrance/log/LogManager.scala
index bea3339..efbffb6 100644
--- a/linkis-computation-governance/linkis-entrance/src/main/scala/org/apache/linkis/entrance/log/LogManager.scala
+++ b/linkis-computation-governance/linkis-entrance/src/main/scala/org/apache/linkis/entrance/log/LogManager.scala
@@ -45,7 +45,7 @@ abstract class LogManager extends LogListener with Logging {
       //     warn(s"jobid :${job.getId()}\nlog : ${log}")
       job match {
         case entranceExecutionJob: EntranceExecutionJob =>
-          if (entranceExecutionJob.getLogWriter.isEmpty) entranceExecutionJob synchronized {
+          if (entranceExecutionJob.getLogWriter.isEmpty) entranceExecutionJob.getLogWriterLocker synchronized {
             if (entranceExecutionJob.getLogWriter.isEmpty) {
               val logWriter = createLogWriter(entranceExecutionJob)
               if (null == logWriter) {
diff --git a/linkis-computation-governance/linkis-manager/linkis-resource-manager/src/main/scala/org/apache/linkis/resourcemanager/restful/RMMonitorRest.scala b/linkis-computation-governance/linkis-manager/linkis-resource-manager/src/main/scala/org/apache/linkis/resourcemanager/restful/RMMonitorRest.scala
index 98bf442..6d4bf60 100644
--- a/linkis-computation-governance/linkis-manager/linkis-resource-manager/src/main/scala/org/apache/linkis/resourcemanager/restful/RMMonitorRest.scala
+++ b/linkis-computation-governance/linkis-manager/linkis-resource-manager/src/main/scala/org/apache/linkis/resourcemanager/restful/RMMonitorRest.scala
@@ -183,8 +183,8 @@ class RMMonitorRest extends Logging {
   }
 
   @RequestMapping(path = Array("allUserResource"), method = Array(RequestMethod.GET))
-  def getAllUserResource(request: HttpServletRequest, @RequestParam(value = "username") username: String,
-                         @RequestParam(value = "creator") creator: String, @RequestParam(value = "engineType") engineType: String,
+  def getAllUserResource(request: HttpServletRequest, @RequestParam(value = "username", required = false) username: String,
+                         @RequestParam(value = "creator", required = false) creator: String, @RequestParam(value = "engineType", required = false) engineType: String,
                          @RequestParam(value = "page", required = false) page: Int, @RequestParam(value = "size", required = false) size: Int): Message = {
     val queryUser = SecurityFilter.getLoginUser(request)
     val admins = RMUtils.GOVERNANCE_STATION_ADMIN.getValue.split(",")

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@linkis.apache.org
For additional commands, e-mail: commits-help@linkis.apache.org