You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by cw...@apache.org on 2013/08/23 22:20:13 UTC
svn commit: r1517015 - in
/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent:
NodeAgent.java launcher/DuccCommandExecutor.java
Author: cwiklik
Date: Fri Aug 23 20:20:13 2013
New Revision: 1517015
URL: http://svn.apache.org/r1517015
Log:
UIMA-3216 Fixed times related to process transitioning from Initializing to Running states.
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/NodeAgent.java
uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/DuccCommandExecutor.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/NodeAgent.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/NodeAgent.java?rev=1517015&r1=1517014&r2=1517015&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/NodeAgent.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/NodeAgent.java Fri Aug 23 20:20:13 2013
@@ -854,8 +854,21 @@ public class NodeAgent extends AbstractD
processEntry.getValue().setProcessJmxUrl(duccEvent.getProcessJmxUrl());
}
ITimeWindow tw = processEntry.getValue().getTimeWindowInit();
- if (tw.getEnd() == null && duccEvent.getState().equals(ProcessState.Running)) {
- tw.setEnd(TimeStamp.getCurrentMillis());
+ if (tw.getEnd() == null ) {
+ if ( !duccEvent.getState().equals(ProcessState.Initializing)) {
+ // Mark the time the process ended initialization. It also
+ // covers a case when the process terminates while initializing
+ tw.setEnd(TimeStamp.getCurrentMillis());
+
+ if ( duccEvent.getState().equals(ProcessState.Running)) {
+ ITimeWindow twr = new TimeWindow();
+ String millis;
+ millis = TimeStamp.getCurrentMillis();
+ // Mark the time the process started running
+ processEntry.getValue().setTimeWindowRun(twr);
+ twr.setStart(millis);
+ }
+ }
}
ManagedProcess deployedProcess = null;
synchronized (monitor) {
@@ -1144,13 +1157,14 @@ public class NodeAgent extends AbstractD
ProcessStateUpdate processStateUpdate = new ProcessStateUpdate(process.getProcessState(),
process.getPID(), process.getDuccId().getUnique());
ProcessStateUpdateDuccEvent event = new ProcessStateUpdateDuccEvent(processStateUpdate);
+ /*
if (process != null) {
ITimeWindow tw = process.getTimeWindowInit();
if (tw.getEnd() == null) {
tw.setEnd(TimeStamp.getCurrentMillis());
}
}
-
+*/
updateProcessStatus(event);
} catch (Exception e) {
logger.error(methodName, null, e);
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/DuccCommandExecutor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/DuccCommandExecutor.java?rev=1517015&r1=1517014&r2=1517015&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/DuccCommandExecutor.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/DuccCommandExecutor.java Fri Aug 23 20:20:13 2013
@@ -305,14 +305,14 @@ public class DuccCommandExecutor extends
private void startProcess(ICommandLine cmdLine,String[] cmd, Map<String, String> processEnv) throws Exception {
String methodName = "startProcess";
- ITimeWindow twr = new TimeWindow();
- String millis;
- millis = TimeStamp.getCurrentMillis();
-
- ((ManagedProcess) managedProcess).getDuccProcess().setTimeWindowRun(twr);
- twr.setStart(millis);
+// ITimeWindow twr = new TimeWindow();
+// String millis;
+// millis = TimeStamp.getCurrentMillis();
+//
+// ((ManagedProcess) managedProcess).getDuccProcess().setTimeWindowRun(twr);
+// twr.setStart(millis);
ProcessBuilder pb = new ProcessBuilder(cmd);
-
+ /*
if ( ((ManagedProcess)super.managedProcess).getDuccProcess().getProcessType().equals(ProcessType.Pop) ||
((ManagedProcess)super.managedProcess).getDuccProcess().getProcessType().equals(ProcessType.Service) ) {
ITimeWindow twi = new TimeWindow();
@@ -320,6 +320,7 @@ public class DuccCommandExecutor extends
twi.setStart(millis);
twi.setEnd(millis);
}
+ */
Map<String, String> env = pb.environment();
// Dont enherit agent's environment
env.clear();
@@ -341,8 +342,8 @@ public class DuccCommandExecutor extends
} catch(Exception e) {
throw e;
} finally {
- millis = TimeStamp.getCurrentMillis();
- twr.setEnd(millis);
+// millis = TimeStamp.getCurrentMillis();
+// twr.setEnd(millis);
}
}
private void doExec(ProcessBuilder pb, String[] cmd, boolean isKillCmd) throws Exception {