Author: burn
Date: Wed Jun  1 18:58:17 2016
New Revision: 1746489

URL: http://svn.apache.org/viewvc?rev=1746489&view=rev
Log:
UIMA-4913 Update the DB when the size of a node (in quanta) changes

Modified:
    
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-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=1746489&r1=1746488&r2=1746489&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
 Wed Jun  1 18:58:17 2016
@@ -345,11 +345,15 @@ public class Machine
         long now = System.currentTimeMillis();
         activeShares.put(s, s);
         shares_left -= s.getShareOrder();
+        if (shares_left < 0) {
+            logger.warn(methodName, s.getJob().getId(), "Node", this.id, "must 
have shrunk as it has",
+                    -shares_left, "more slots in use than than its current 
size of", share_order);
+        }
         try {
             // Not transactional.  If this turns into a problem we'll have to 
find a way
                        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, s.getJob().getId(), "Time to assign 
share", s.getId(), "in db", System.currentTimeMillis() - now);
+            logger.debug(methodName, s.getJob().getId(), "Time to assign 
share", s.getId(), "in db", System.currentTimeMillis() - now);
                } catch (Exception e) {
             logger.warn(methodName, s.getJob().getId(), "Cannot save state for 
share", s.getId(), "shares_left", shares_left, e);
                }
@@ -368,7 +372,7 @@ public class Machine
             // Not transactional.  If this turns into a problem we'll have to 
find a way
                        persistence.setNodeProperties(id, RmNodes.Assignments,  
activeShares.size(), RmNodes.NPAssignments, countNpShares(),  
RmNodes.SharesLeft, shares_left);
                        persistence.removeAssignment(id, s.getJob().getId(), 
s);  // update jobs on machine and specific shares
-            logger.info(methodName, s.getJob().getId(), "Time to remove 
share", s.getId(), "in db", System.currentTimeMillis() - now);
+            logger.debug(methodName, s.getJob().getId(), "Time to remove 
share", s.getId(), "in db", System.currentTimeMillis() - now);
                } catch (Exception e) {
             logger.warn(methodName, s.getJob().getId(), "Cannot save state for 
share", s.getId(), "shares_left", shares_left);
                }

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=1746489&r1=1746488&r2=1746489&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
 Wed Jun  1 18:58:17 2016
@@ -1063,7 +1063,7 @@ class NodePool
             HashMap<Node, Machine> mlist = machinesByOrder.get(oldorder);
             mlist.remove(m.key());
             m.setShareOrder(neworder);                          //    hardware 
changes.
-            
+            signalDb(m, RmNodes.ShareOrder, neworder);          // Jira 4913 
Update DB so ducc-mon can show the current size 
             mlist = machinesByOrder.get(neworder);
             if ( mlist == null ) {
                 mlist = new HashMap<Node, Machine>();


Reply via email to