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 2015/12/08 00:08:53 UTC
svn commit: r1718491 - in /uima/sandbox/uima-ducc/trunk:
uima-ducc-common/src/main/java/org/apache/uima/ducc/common/persistence/rm/
uima-ducc-database/src/main/java/org/apache/uima/ducc/database/
uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/sched...
Author: challngr
Date: Mon Dec 7 23:08:53 2015
New Revision: 1718491
URL: http://svn.apache.org/viewvc?rev=1718491&view=rev
Log:
UIMA-4577. Add np_assignments (non-preemptable assignments) to rmnodes table.
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/persistence/rm/IRmPersistence.java
uima/sandbox/uima-ducc/trunk/uima-ducc-database/src/main/java/org/apache/uima/ducc/database/RmNodeState.java
uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/Machine.java
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-common/src/main/java/org/apache/uima/ducc/common/persistence/rm/IRmPersistence.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/persistence/rm/IRmPersistence.java?rev=1718491&r1=1718490&r2=1718491&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/persistence/rm/IRmPersistence.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/persistence/rm/IRmPersistence.java Mon Dec 7 23:08:53 2015
@@ -266,6 +266,10 @@ public interface IRmPersistence
public String pname() { return "assignments"; }
public Type type() { return Type.Integer; }
},
+ NPAssignments {
+ public String pname() { return "np_assignments"; }
+ public Type type() { return Type.Integer; }
+ },
;
public boolean isPrimaryKey() { return false; }
public boolean isPrivate() { return false; }
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-database/src/main/java/org/apache/uima/ducc/database/RmNodeState.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-database/src/main/java/org/apache/uima/ducc/database/RmNodeState.java?rev=1718491&r1=1718490&r2=1718491&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-database/src/main/java/org/apache/uima/ducc/database/RmNodeState.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-database/src/main/java/org/apache/uima/ducc/database/RmNodeState.java Mon Dec 7 23:08:53 2015
@@ -65,7 +65,7 @@ public class RmNodeState
System.out.println("Usage: RmNodeState <dburl>");
System.exit(1);
}
- System.setProperty("ducc.state.database.url", args[0]);
+ System.setProperty(DbManager.URL_PROPERTY, args[0]);
RmNodeState rns = new RmNodeState(args[0]);
try {
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/Machine.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/Machine.java?rev=1718491&r1=1718490&r2=1718491&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/Machine.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/Machine.java Mon Dec 7 23:08:53 2015
@@ -243,6 +243,17 @@ public class Machine
return answer;
}
+ public int countNpShares()
+ {
+ int ret = 0;
+ for ( Share s : activeShares.values() ) {
+ if ( s.isFixed() ) {
+ ret += s.getShareOrder();
+ }
+ }
+ return ret;
+ }
+
public int countProcesses()
{
return activeShares.size();
@@ -319,7 +330,7 @@ public class Machine
shares_left -= s.getShareOrder();
try {
// Not transactional. If this turns into a problem we'll have to find a way
- persistence.setNodeProperties(id, RmNodes.Assignments, activeShares.size(), RmNodes.SharesLeft, shares_left);
+ persistence.setNodeProperties(id, RmNodes.Assignments, activeShares.size(), RmNodes.NPAssignments, countNpShares(), RmNodes.SharesLeft, shares_left);
persistence.addAssignment(id, s.getJob().getId(), s, getQuantum(), s.getJob().getShortType()); // update jobs on machine and specific shares
logger.info(methodName, null, "Time to assign share in db", System.currentTimeMillis() - now);
} catch (Exception e) {
@@ -338,7 +349,7 @@ public class Machine
shares_left += s.getShareOrder();
try {
// Not transactional. If this turns into a problem we'll have to find a way
- persistence.setNodeProperties(id, RmNodes.Assignments, activeShares.size(), RmNodes.SharesLeft, shares_left);
+ persistence.setNodeProperties(id, RmNodes.Assignments, RmNodes.NPAssignments, countNpShares(), activeShares.size(), RmNodes.SharesLeft, shares_left);
persistence.removeAssignment(id, s.getJob().getId(), s); // update jobs on machine and specific shares
logger.info(methodName, null, "Time to remove share in db", System.currentTimeMillis() - now);
} catch (Exception e) {
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=1718491&r1=1718490&r2=1718491&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 Mon Dec 7 23:08:53 2015
@@ -1033,6 +1033,7 @@ class NodePool
props.put(RmNodes.Heartbeats , 0);
props.put(RmNodes.SharesLeft , m.countFreeShares()); // qshares remaining
props.put(RmNodes.Assignments , m.countProcesses()); // processes
+ props.put(RmNodes.NPAssignments, m.countNpShares());
props.put(RmNodes.Reservable , canReserve);