You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by ch...@apache.org on 2014/07/10 19:01:42 UTC
svn commit: r1609504 -
/uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/NodePool.java
Author: challngr
Date: Thu Jul 10 17:01:41 2014
New Revision: 1609504
URL: http://svn.apache.org/r1609504
Log:
UIMA-3939 Prevent share count from going negative during node failure. Sigh.
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/NodePool.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/NodePool.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/NodePool.java?rev=1609504&r1=1609503&r2=1609504&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/NodePool.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/NodePool.java Thu Jul 10 17:01:41 2014
@@ -797,9 +797,11 @@ class NodePool
mlist = new HashMap<Node, Machine>();
machinesByOrder.put(order, mlist);
}
- mlist.put(m.key(), m);
+ mlist.put(m.key(), m);
+
+ total_shares += order; // UIMA-3939
- logger.info(methodName, null, "Node ", m.getId(), " was unresponsive. Reactivating.");
+ logger.info(methodName, null, "Nodepool:", id, "Host reactivated ", m.getId(), String.format("shares %2d total %4d:", order, total_shares), m.toString());
return m;
}
@@ -821,7 +823,7 @@ class NodePool
}
mlist.put(machine.key(), machine);
- logger.info(methodName, null, "Machine added to nodepool", id, ": ", machine.getId(), String.format("shares %2d total %4d:", order, total_shares), machine.toString());
+ logger.info(methodName, null, "Nodepool:", id, "Host added:", id, ": ", machine.getId(), String.format("shares %2d total %4d:", order, total_shares), machine.toString());
updated++;
return machine;
@@ -831,9 +833,8 @@ class NodePool
{
String methodName = "nodeLeaves";
- logger.info(methodName, null, "Node leaves:", m.getId());
if ( allMachines.containsKey(m.key()) ) {
- logger.info(methodName, null, "Looking for shares to clear", m.getId());
+ logger.info(methodName, null, "Nodepool:", id, "Host disabled:", m.getId(), "Looking for shares to clear");
int order = m.getShareOrder();
String name = m.getId();
@@ -845,13 +846,14 @@ class NodePool
if ( j.getDuccType() == DuccType.Reservation ) {
// UIMA-3614. Only actual reservation is left intact
- logger.info(methodName, j.getId(), "Not purging job on dead/offline node, job type:", j.getDuccType());
+ logger.info(methodName, null, "Nodepool:", id, "Host dead/offline:", m.getId(), "Not purging", j.getDuccType());
break;
}
- logger.info(methodName, j.getId(), "Purging job on dead/offline node, job type:", j.getDuccType());
+ logger.info(methodName, j.getId(), "Nodepool:", id, "Purge", j.getDuccType(), "on dead/offline:", m.getId());
j.shrinkByOne(s);
nPendingByOrder[order]++;
+
s.purge(); // This bet tells OR not to wait for confirmation from the agent
}
@@ -867,6 +869,7 @@ class NodePool
}
machinesByName.remove(name);
machinesByIp.remove(ip);
+ logger.info(methodName, null, "Nodepool:", id, "Node leaves:", m.getId(), "total shares:", total_shares);
} else {
for ( NodePool np : children.values() ) {
np.nodeLeaves(m);