You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by de...@apache.org on 2016/06/01 21:43:16 UTC
svn commit: r1746502 - in
/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws:
./ server/ server/nodeviz/
Author: degenaro
Date: Wed Jun 1 21:43:16 2016
New Revision: 1746502
URL: http://svn.apache.org/viewvc?rev=1746502&view=rev
Log:
UIMA-4923 DUCC Web Server (WS) should not display nodes that have been removed from service on Machines page
- Daemons and Viz pages have missing nodes and/or incorrect status
- Machines page memory sizes are not quantum multiples
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/nodeviz/NodeViz.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java?rev=1746502&r1=1746501&r2=1746502&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java Wed Jun 1 21:43:16 2016
@@ -89,8 +89,8 @@ public class DuccMachinesData {
return isSwapping.containsKey(ip);
}
- public ConcurrentSkipListMap<NodeId,MachineInfo> getMachines() {
- return unsortedMachines;
+ public ConcurrentSkipListMap<MachineInfo,NodeId> getMachines() {
+ return getSortedMachines();
}
public ConcurrentSkipListMap<MachineInfo,NodeId> getSortedMachines() {
@@ -643,7 +643,13 @@ public class DuccMachinesData {
String name = entry.getKey();
NodeId nodeId = new NodeId(name);
MachineInfo mi = unsortedMachines.get(nodeId);
+ IDbMachine dbMachine = entry.getValue();
if(mi != null) {
+ int quantum = dbMachine.getQuantum();
+ int total = quantum*dbMachine.getShareOrder();
+ int free = quantum*dbMachine.getSharesLeft();
+ mi.setMemTotal(""+total);
+ mi.setMemFree(""+free);
dbSortedMachines.put(mi, nodeId);
String shortName = nodeId.getShortName();
knownShortNames.add(shortName);
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java?rev=1746502&r1=1746501&r2=1746502&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java Wed Jun 1 21:43:16 2016
@@ -26,6 +26,7 @@ import org.apache.uima.ducc.common.utils
import org.apache.uima.ducc.common.utils.DuccLoggerComponents;
import org.apache.uima.ducc.common.utils.id.DuccId;
import org.apache.uima.ducc.transport.event.ProcessInfo;
+import org.apache.uima.ducc.ws.types.NodeId;
public class MachineInfo implements Comparable<MachineInfo> {
@@ -67,6 +68,8 @@ public class MachineInfo implements Comp
private Integer quantum = null;
+ private NodeId nodeid;
+
public MachineInfo(String fileDef, String ip, String name, String memTotal, String memFree, String swapInuse, String swapFree, double cpu, boolean cGroups, List<ProcessInfo> alienPids, long heartbeat, long pubSize) {
init(MachineStatus.Defined, fileDef, ip, name, memTotal, memFree, swapInuse, swapFree, cpu, cGroups, alienPids, heartbeat, pubSize);
}
@@ -96,6 +99,8 @@ public class MachineInfo implements Comp
this.heartbeatMaxTOD = 0;
this.pubSize = pubSize;
this.pubSizeMax = 0;
+
+ this.nodeid = new NodeId(name);
}
/*
@@ -260,10 +265,18 @@ public class MachineInfo implements Comp
return this.name;
}
+ public void setMemTotal(String value) {
+ this.memTotal = value;
+ }
+
public String getMemTotal() {
return this.memTotal;
}
+ public void setMemFree(String value) {
+ this.memFree = value;
+ }
+
public String getMemFree() {
return this.memFree;
}
@@ -605,5 +618,27 @@ public class MachineInfo implements Comp
private int compareName(MachineInfo m1, MachineInfo m2) {
return m1.name.compareTo(m2.name);
}
+
+ // @return true if the long names match
+
+ @Override
+ public boolean equals(Object object) {
+ boolean retVal = false;
+ if(object != null) {
+ if(object instanceof NodeId) {
+ MachineInfo that = (MachineInfo) object;
+ return (this.compareTo(that) == 0);
+ }
+ }
+ return retVal;
+ }
+
+ // @return use long name as hashCode
+
+ @Override
+ public int hashCode()
+ {
+ return this.nodeid.hashCode();
+ }
}
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java?rev=1746502&r1=1746501&r2=1746502&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java Wed Jun 1 21:43:16 2016
@@ -3509,11 +3509,10 @@ public class DuccHandler extends DuccAbs
String cookie = DuccCookies.getCookie(request,DuccCookies.cookieAgents);
if(cookie.equals(DuccCookies.valueAgentsShow)) {
duccLogger.trace(methodName, jobid, "== show: "+cookie);
- ConcurrentSkipListMap<NodeId,MachineInfo> machines = DuccMachinesData.getInstance().getMachines();
- Iterator<NodeId> iterator = machines.keySet().iterator();
+ ConcurrentSkipListMap<MachineInfo,NodeId> machines = DuccMachinesData.getInstance().getMachines();
+ Iterator<MachineInfo> iterator = machines.keySet().iterator();
while(iterator.hasNext()) {
- NodeId key = iterator.next();
- MachineInfo machineInfo = machines.get(key);
+ MachineInfo machineInfo = iterator.next();
Properties properties = DuccDaemonRuntimeProperties.getInstance().getAgent(machineInfo.getName());
if(first) {
first = false;
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java?rev=1746502&r1=1746501&r2=1746502&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java Wed Jun 1 21:43:16 2016
@@ -1299,6 +1299,8 @@ public class DuccHandlerClassic extends
String wsHostName = getWebServerHostName();
DuccDaemonsData duccDaemonsData = DuccDaemonsData.getInstance();
+ DuccMachinesData duccMachinesData = DuccMachinesData.getInstance();
+
int counter = 0;
daemons:
for(DaemonName daemonName : DuccDaemonRuntimeProperties.daemonNames) {
@@ -1485,11 +1487,10 @@ public class DuccHandlerClassic extends
if(cookie.equals(DuccCookies.valueAgentsShow)) {
duccLogger.trace(methodName, jobid, "== show: "+cookie);
- ConcurrentSkipListMap<NodeId,MachineInfo> machines = DuccMachinesData.getInstance().getMachines();
- Iterator<NodeId> iterator = machines.keySet().iterator();
+ ConcurrentSkipListMap<MachineInfo,NodeId> machines = duccMachinesData.getMachines();
+ Iterator<MachineInfo> iterator = machines.keySet().iterator();
while(iterator.hasNext()) {
- NodeId key = iterator.next();
- MachineInfo machineInfo = machines.get(key);
+ MachineInfo machineInfo = iterator.next();
DuccDaemonRuntimeProperties drp = DuccDaemonRuntimeProperties.getInstance();
String machineName = machineInfo.getName();
if(machineName.startsWith("=")) {
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java?rev=1746502&r1=1746501&r2=1746502&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java Wed Jun 1 21:43:16 2016
@@ -1843,6 +1843,7 @@ public class DuccHandlerJsonFormat exten
JsonArray row;
DuccDaemonsData duccDaemonsData = DuccDaemonsData.getInstance();
+ DuccMachinesData duccMachinesData = DuccMachinesData.getInstance();
String wsHostIP = getWebServerHostIP();
String wsHostName = getWebServerHostName();
@@ -2017,12 +2018,11 @@ public class DuccHandlerJsonFormat exten
}
if(showAgents) {
- ConcurrentSkipListMap<NodeId,MachineInfo> machines = DuccMachinesData.getInstance().getMachines();
- Iterator<NodeId> iterator = machines.keySet().iterator();
+ ConcurrentSkipListMap<MachineInfo,NodeId> machines = duccMachinesData.getMachines();
+ Iterator<MachineInfo> iterator = machines.keySet().iterator();
while(iterator.hasNext()) {
row = new JsonArray();
- NodeId key = iterator.next();
- MachineInfo machineInfo = machines.get(key);
+ MachineInfo machineInfo = iterator.next();
DuccDaemonRuntimeProperties drp = DuccDaemonRuntimeProperties.getInstance();
String machineName = machineInfo.getName();
if(machineName.startsWith("=")) {
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/nodeviz/NodeViz.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/nodeviz/NodeViz.java?rev=1746502&r1=1746501&r2=1746502&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/nodeviz/NodeViz.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/nodeviz/NodeViz.java Wed Jun 1 21:43:16 2016
@@ -273,13 +273,13 @@ public class NodeViz
}
logger.debug(methodName, null, "Generateing visualizaiton");
- ConcurrentSkipListMap<NodeId,MachineInfo> m = machineData.getMachines();
+ ConcurrentSkipListMap<MachineInfo,NodeId> m = machineData.getMachines();
- for (Entry<NodeId, MachineInfo> entry : m.entrySet()) {
+ for (Entry<MachineInfo, NodeId> entry : m.entrySet()) {
//
// This is for hosts that have no work on them so they didn't come in the work map
//
- MachineInfo mi = entry.getValue();
+ MachineInfo mi = entry.getKey();
// NOTE: the map changes all the time so the value may be gone. This situation
// will be fixed one day but for now just forget the node, it will show up
// next time we get here.