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);