This is an automated email from the ASF dual-hosted git repository.
journey pushed a commit to branch dev-1.3.0
in repository https://gitbox.apache.org/repos/asf/incubator-dolphinscheduler.git
The following commit(s) were added to refs/heads/dev-1.3.0 by this push:
new 396b171 fix bug:#2735 (#2770)
396b171 is described below
commit 396b1716e4e9b0f55f3686ba8e0283555c65c085
Author: tlhhup <[email protected]>
AuthorDate: Fri May 22 11:20:54 2020 +0800
fix bug:#2735 (#2770)
1. store process id in zk.
2. resolve host and port through zk path.
3. modify ui key.
---
.../java/org/apache/dolphinscheduler/common/Constants.java | 2 +-
.../org/apache/dolphinscheduler/common/utils/ResInfo.java | 4 ++--
.../server/master/registry/MasterRegistry.java | 4 +++-
.../dolphinscheduler/server/registry/HeartBeatTask.java | 4 +++-
.../server/worker/registry/WorkerRegistry.java | 4 +++-
.../apache/dolphinscheduler/service/zk/AbstractZKClient.java | 11 +++++++----
.../src/js/conf/home/pages/monitor/pages/servers/master.vue | 2 +-
.../src/js/conf/home/pages/monitor/pages/servers/worker.vue | 2 +-
dolphinscheduler-ui/src/js/module/i18n/locale/zh_CN.js | 2 +-
9 files changed, 22 insertions(+), 13 deletions(-)
diff --git
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
index d958932..686dce3 100644
---
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
+++
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
@@ -507,7 +507,7 @@ public final class Constants {
/**
* heartbeat for zk info length
*/
- public static final int HEARTBEAT_FOR_ZOOKEEPER_INFO_LENGTH = 9;
+ public static final int HEARTBEAT_FOR_ZOOKEEPER_INFO_LENGTH = 10;
/**
diff --git
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/utils/ResInfo.java
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/utils/ResInfo.java
index 9c1d880..fa52a91 100644
---
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/utils/ResInfo.java
+++
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/utils/ResInfo.java
@@ -18,8 +18,6 @@ package org.apache.dolphinscheduler.common.utils;
import org.apache.dolphinscheduler.common.Constants;
import org.apache.dolphinscheduler.common.model.Server;
-import java.util.Date;
-
/**
* heartbeat for ZK reigster res info
*/
@@ -109,6 +107,8 @@ public class ResInfo {
Double.parseDouble(masterArray[2])));
masterServer.setCreateTime(DateUtils.stringToDate(masterArray[6]));
masterServer.setLastHeartbeatTime(DateUtils.stringToDate(masterArray[7]));
+ //set process id
+ masterServer.setId(Integer.parseInt(masterArray[9]));
return masterServer;
}
diff --git
a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/registry/MasterRegistry.java
b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/registry/MasterRegistry.java
index de6d3bc..3ddb9e7 100644
---
a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/registry/MasterRegistry.java
+++
b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/registry/MasterRegistry.java
@@ -19,6 +19,7 @@ package org.apache.dolphinscheduler.server.master.registry;
import org.apache.curator.framework.CuratorFramework;
import org.apache.curator.framework.state.ConnectionState;
import org.apache.curator.framework.state.ConnectionStateListener;
+import org.apache.dolphinscheduler.common.Constants;
import org.apache.dolphinscheduler.common.utils.DateUtils;
import org.apache.dolphinscheduler.common.utils.OSUtils;
import org.apache.dolphinscheduler.remote.utils.NamedThreadFactory;
@@ -131,6 +132,7 @@ public class MasterRegistry {
* @return
*/
private String getLocalAddress(){
- return OSUtils.getHost() + ":" + masterConfig.getListenPort();
+ return OSUtils.getHost() + Constants.COLON +
masterConfig.getListenPort();
}
+
}
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 6d0eae9..2345ce9 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
@@ -73,7 +73,9 @@ public class HeartBeatTask extends Thread{
builder.append(reservedMemory).append(Constants.COMMA);
builder.append(startTime).append(Constants.COMMA);
builder.append(DateUtils.dateToString(new
Date())).append(Constants.COMMA);
- builder.append(status);
+ builder.append(status).append(COMMA);
+ //save process id
+ builder.append(OSUtils.getProcessID());
zookeeperRegistryCenter.getZookeeperCachedOperator().update(heartBeatPath,
builder.toString());
} catch (Throwable ex){
logger.error("error write heartbeat info", ex);
diff --git
a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/registry/WorkerRegistry.java
b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/registry/WorkerRegistry.java
index f7093a1..715db39 100644
---
a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/registry/WorkerRegistry.java
+++
b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/registry/WorkerRegistry.java
@@ -19,6 +19,7 @@ package org.apache.dolphinscheduler.server.worker.registry;
import org.apache.curator.framework.CuratorFramework;
import org.apache.curator.framework.state.ConnectionState;
import org.apache.curator.framework.state.ConnectionStateListener;
+import org.apache.dolphinscheduler.common.Constants;
import org.apache.dolphinscheduler.common.utils.DateUtils;
import org.apache.dolphinscheduler.common.utils.OSUtils;
import org.apache.dolphinscheduler.common.utils.StringUtils;
@@ -148,6 +149,7 @@ public class WorkerRegistry {
* @return
*/
private String getLocalAddress(){
- return OSUtils.getHost() + ":" + workerConfig.getListenPort();
+ return OSUtils.getHost() + Constants.COLON +
workerConfig.getListenPort();
}
+
}
diff --git
a/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/zk/AbstractZKClient.java
b/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/zk/AbstractZKClient.java
index e75e20b..acbbe76 100644
---
a/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/zk/AbstractZKClient.java
+++
b/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/zk/AbstractZKClient.java
@@ -123,12 +123,15 @@ public abstract class AbstractZKClient extends
ZookeeperCachedOperator {
String parentPath = getZNodeParentPath(zkNodeType);
List<Server> masterServers = new ArrayList<>();
- int i = 0;
for (Map.Entry<String, String> entry : masterMap.entrySet()) {
Server masterServer =
ResInfo.parseHeartbeatForZKInfo(entry.getValue());
- masterServer.setZkDirectory(parentPath + "/"+
entry.getKey());
- masterServer.setId(i);
- i ++;
+ String key = entry.getKey();
+ masterServer.setZkDirectory(parentPath + "/"+ key);
+ //set host and port
+ String[] hostAndPort=key.split(COLON);
+ String[] hosts=hostAndPort[0].split(DIVISION_STRING);
+ masterServer.setHost(hosts[hosts.length-1]);// fetch
the last one
+ masterServer.setPort(Integer.parseInt(hostAndPort[1]));
masterServers.add(masterServer);
}
return masterServers;
diff --git
a/dolphinscheduler-ui/src/js/conf/home/pages/monitor/pages/servers/master.vue
b/dolphinscheduler-ui/src/js/conf/home/pages/monitor/pages/servers/master.vue
index dc06712..ecc414c 100644
---
a/dolphinscheduler-ui/src/js/conf/home/pages/monitor/pages/servers/master.vue
+++
b/dolphinscheduler-ui/src/js/conf/home/pages/monitor/pages/servers/master.vue
@@ -22,7 +22,7 @@
<div class="row-title">
<div class="left">
<span class="sp">IP: {{item.host}}</span>
- <span class="sp">{{$t('Process Pid')}}: {{item.port}}</span>
+ <span class="sp">{{$t('Process Pid')}}: {{item.id}}</span>
<span class="sp">{{$t('Zk registration directory')}}:
{{item.zkDirectory}}</span>
</div>
<div class="right">
diff --git
a/dolphinscheduler-ui/src/js/conf/home/pages/monitor/pages/servers/worker.vue
b/dolphinscheduler-ui/src/js/conf/home/pages/monitor/pages/servers/worker.vue
index b386ea0..ceaed89 100644
---
a/dolphinscheduler-ui/src/js/conf/home/pages/monitor/pages/servers/worker.vue
+++
b/dolphinscheduler-ui/src/js/conf/home/pages/monitor/pages/servers/worker.vue
@@ -22,7 +22,7 @@
<div class="row-title">
<div class="left">
<span class="sp">IP: {{item.host}}</span>
- <span class="sp">{{$t('Process Pid')}}: {{item.port}}</span>
+ <span class="sp">{{$t('Process Pid')}}: {{item.id}}</span>
<span class="sp">{{$t('Zk registration directory')}}:
{{item.zkDirectory}}</span>
</div>
<div class="right">
diff --git a/dolphinscheduler-ui/src/js/module/i18n/locale/zh_CN.js
b/dolphinscheduler-ui/src/js/module/i18n/locale/zh_CN.js
index 2cdf09d..777173f 100755
--- a/dolphinscheduler-ui/src/js/module/i18n/locale/zh_CN.js
+++ b/dolphinscheduler-ui/src/js/module/i18n/locale/zh_CN.js
@@ -168,7 +168,7 @@ export default {
'Project Name': '项目名称',
'Please enter name': '请输入名称',
'Owned Users': '所属用户',
- 'Process Pid': '进程pid',
+ 'Process Pid': '进程Pid',
'Zk registration directory': 'zk注册目录',
cpuUsage: 'cpuUsage',
memoryUsage: 'memoryUsage',