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 2013/03/01 19:14:42 UTC
svn commit: r1451674 -
/uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/StateJobAccounting.java
Author: degenaro
Date: Fri Mar 1 18:14:42 2013
New Revision: 1451674
URL: http://svn.apache.org/r1451674
Log:
UIMA-207 DUCC orchestrator (OR) should advance past the Initializing state for Managed Reservations
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/StateJobAccounting.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/StateJobAccounting.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/StateJobAccounting.java?rev=1451674&r1=1451673&r2=1451674&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/StateJobAccounting.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/StateJobAccounting.java Fri Mar 1 18:14:42 2013
@@ -20,6 +20,8 @@ package org.apache.uima.ducc.orchestrato
import org.apache.uima.ducc.common.utils.DuccLogger;
import org.apache.uima.ducc.common.utils.DuccLoggerComponents;
+import org.apache.uima.ducc.transport.event.common.IDuccTypes.DuccType;
+import org.apache.uima.ducc.transport.event.common.IDuccWorkService.ServiceDeploymentType;
import org.apache.uima.ducc.transport.event.common.IDuccWorkJob;
import org.apache.uima.ducc.transport.event.common.IRationale;
import org.apache.uima.ducc.transport.event.common.IDuccCompletionType.JobCompletionType;
@@ -36,6 +38,45 @@ public class StateJobAccounting {
return instance;
}
+ private boolean advance(IDuccWorkJob job) {
+ String methodName = "advance";
+ boolean retVal = false;
+ try {
+ DuccType duccType = job.getDuccType();
+ switch(duccType) {
+ case Service:
+ ServiceDeploymentType sdt = job.getServiceDeploymentType();
+ switch(sdt) {
+ case other:
+ JobState state = job.getJobState();
+ switch(state) {
+ case Initializing:
+ JobState next = JobState.Running;
+ JobState prev = state;
+ logger.info(methodName, job.getDuccId(),"current["+next+"] previous["+prev+"]"+" "+"-> skipped");
+ retVal = stateChange(job, next);
+ break;
+ default:
+ logger.debug(methodName, job.getDuccId(), "State is not "+JobState.Initializing+" state");
+ break;
+ }
+ break;
+ default:
+ logger.debug(methodName, job.getDuccId(), "Service is not ManagedReservation (other); ServiceDeploymentType="+sdt);
+ break;
+ }
+ break;
+ default:
+ logger.debug(methodName, job.getDuccId(), "DuccType="+duccType);
+ break;
+ }
+ }
+ catch(Exception e) {
+ logger.error(methodName, job.getDuccId(), e);
+ }
+ return retVal;
+ }
+
public boolean stateChange(IDuccWorkJob job, JobState state) {
String methodName = "stateChange";
boolean retVal = false;
@@ -79,7 +120,10 @@ public class StateJobAccounting {
}
if(retVal) {
job.setJobState(state);
- logger.info(methodName, job.getDuccId(),"current["+next+"] previous["+prev+"]");
+ boolean advanceVal = advance(job);
+ if(!advanceVal) {
+ logger.info(methodName, job.getDuccId(),"current["+next+"] previous["+prev+"]");
+ }
}
else {
try {