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 2015/02/09 15:56:17 UTC
svn commit: r1658419 -
/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/
Author: degenaro
Date: Mon Feb 9 14:56:17 2015
New Revision: 1658419
URL: http://svn.apache.org/r1658419
Log:
UIMA-4069 DUCC Job Driver (JD) system classpath
handle actionData = null in FSM action.engage() methods
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionAck.java
uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionAckTimeout.java
uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionEnd.java
uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionEndTimeout.java
uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionGet.java
uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionGetRedux.java
uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionProcessFailure.java
uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionProcessPreempt.java
uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionSend.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionAck.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionAck.java?rev=1658419&r1=1658418&r2=1658419&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionAck.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionAck.java Mon Feb 9 14:56:17 2015
@@ -46,29 +46,36 @@ public class ActionAck implements IActio
logger.trace(location, ILogger.null_id, "");
IActionData actionData = (IActionData) objectData;
try {
- IWorkItem wi = actionData.getWorkItem();
- IMetaCas metaCas = wi.getMetaCas();
- JobDriver jd = JobDriver.getInstance();
- IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
- MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
- if(metaCas != null) {
- //
- TimeoutManager toMgr = TimeoutManager.getInstance();
- toMgr.receivedAck(actionData);
- toMgr.pendingEnd(actionData);
- //
- int seqNo = metaCasHelper.getSystemKey();
- wisk.operating(seqNo);
- //
- wi.setTodAck();
- MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- JobDriver.getInstance().getMessageHandler().incAcks();
- logger.info(location, ILogger.null_id, mb.toString());
+ if(actionData != null) {
+ IWorkItem wi = actionData.getWorkItem();
+ IMetaCas metaCas = wi.getMetaCas();
+ JobDriver jd = JobDriver.getInstance();
+ IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
+ MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
+ if(metaCas != null) {
+ //
+ TimeoutManager toMgr = TimeoutManager.getInstance();
+ toMgr.receivedAck(actionData);
+ toMgr.pendingEnd(actionData);
+ //
+ int seqNo = metaCasHelper.getSystemKey();
+ wisk.operating(seqNo);
+ //
+ wi.setTodAck();
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ JobDriver.getInstance().getMessageHandler().incAcks();
+ logger.info(location, ILogger.null_id, mb.toString());
+ }
+ else {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("No CAS found for processing");
+ logger.info(location, ILogger.null_id, mb.toString());
+ }
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No CAS found for processing");
- logger.info(location, ILogger.null_id, mb.toString());
+ mb.append("No action data found for processing");
+ logger.warn(location, ILogger.null_id, mb.toString());
}
}
catch(Exception e) {
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionAckTimeout.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionAckTimeout.java?rev=1658419&r1=1658418&r2=1658419&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionAckTimeout.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionAckTimeout.java Mon Feb 9 14:56:17 2015
@@ -59,35 +59,42 @@ public class ActionAckTimeout extends Ac
logger.trace(location, ILogger.null_id, "");
IActionData actionData = (IActionData) objectData;
try {
- IWorkItem wi = actionData.getWorkItem();
- IMetaCas metaCas = wi.getMetaCas();
- JobDriver jd = JobDriver.getInstance();
- CasManager cm = jd.getCasManager();
- JobDriverHelper jdh = JobDriverHelper.getInstance();
- IRemoteWorkerProcess rwp = jdh.getRemoteWorkerProcess(wi);
- if(rwp != null) {
- if(metaCas != null) {
- WiTracker.getInstance().unassign(wi);
- preemptWorkItem(actionData, cm, metaCas);
- IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
- MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
- IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
- int seqNo = metaCasHelper.getSystemKey();
- wisk.preempt(seqNo);
- pStats.preempt(wi);
- displayProcessStatistics(logger, actionData, wi, pStats);
- wi.reset();
+ if(actionData != null) {
+ IWorkItem wi = actionData.getWorkItem();
+ IMetaCas metaCas = wi.getMetaCas();
+ JobDriver jd = JobDriver.getInstance();
+ CasManager cm = jd.getCasManager();
+ JobDriverHelper jdh = JobDriverHelper.getInstance();
+ IRemoteWorkerProcess rwp = jdh.getRemoteWorkerProcess(wi);
+ if(rwp != null) {
+ if(metaCas != null) {
+ WiTracker.getInstance().unassign(wi);
+ preemptWorkItem(actionData, cm, metaCas);
+ IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
+ MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
+ IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
+ int seqNo = metaCasHelper.getSystemKey();
+ wisk.preempt(seqNo);
+ pStats.preempt(wi);
+ displayProcessStatistics(logger, actionData, wi, pStats);
+ wi.reset();
+ }
+ else {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("No CAS found for processing");
+ logger.info(location, ILogger.null_id, mb.toString());
+ }
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No CAS found for processing");
+ mb.append("No remote worker process entry found for processing");
logger.info(location, ILogger.null_id, mb.toString());
}
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No remote worker process entry found for processing");
- logger.info(location, ILogger.null_id, mb.toString());
+ mb.append("No action data found for processing");
+ logger.warn(location, ILogger.null_id, mb.toString());
}
}
catch(Exception e) {
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionEnd.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionEnd.java?rev=1658419&r1=1658418&r2=1658419&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionEnd.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionEnd.java Mon Feb 9 14:56:17 2015
@@ -263,50 +263,57 @@ public class ActionEnd extends Action im
logger.trace(location, ILogger.null_id, "");
IActionData actionData = (IActionData) objectData;
try {
- IWorkItem wi = actionData.getWorkItem();
- IMetaCasTransaction trans = actionData.getMetaCasTransaction();
- IRemoteWorkerThread rwt = new RemoteWorkerThread(trans);
- IRemoteWorkerProcess rwp = new RemoteWorkerProcess(trans);
- IMetaCas metaCas = wi.getMetaCas();
- JobDriver jd = JobDriver.getInstance();
- JobDriverHelper jdh = JobDriverHelper.getInstance();
- CasManager cm = jd.getCasManager();
- //
- IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
- MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
- IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
- //
- if(metaCas != null) {
- WiTracker.getInstance().unassign(rwt);
+ if(actionData != null) {
+ IWorkItem wi = actionData.getWorkItem();
+ IMetaCasTransaction trans = actionData.getMetaCasTransaction();
+ IRemoteWorkerThread rwt = new RemoteWorkerThread(trans);
+ IRemoteWorkerProcess rwp = new RemoteWorkerProcess(trans);
+ IMetaCas metaCas = wi.getMetaCas();
+ JobDriver jd = JobDriver.getInstance();
+ JobDriverHelper jdh = JobDriverHelper.getInstance();
+ CasManager cm = jd.getCasManager();
//
- TimeoutManager toMgr = TimeoutManager.getInstance();
- toMgr.receivedAck(actionData);
- toMgr.receivedEnd(actionData);
+ IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
+ MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
+ IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
//
- int seqNo = metaCasHelper.getSystemKey();
- Object exception = metaCas.getUserSpaceException();
- if(exception != null) {
- MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("exception");
- logger.info(location, ILogger.null_id, mb.toString());
- handleException(actionData);
- displayProcessStatistics(logger, actionData, wi, pStats);
+ if(metaCas != null) {
+ WiTracker.getInstance().unassign(rwt);
+ //
+ TimeoutManager toMgr = TimeoutManager.getInstance();
+ toMgr.receivedAck(actionData);
+ toMgr.receivedEnd(actionData);
+ //
+ int seqNo = metaCasHelper.getSystemKey();
+ Object exception = metaCas.getUserSpaceException();
+ if(exception != null) {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("exception");
+ logger.info(location, ILogger.null_id, mb.toString());
+ handleException(actionData);
+ displayProcessStatistics(logger, actionData, wi, pStats);
+ }
+ else {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("ended");
+ logger.info(location, ILogger.null_id, mb.toString());
+ wisk.ended(seqNo);
+ successWorkItem(actionData, cm, wi);
+ pStats.done(wi);
+ displayProcessStatistics(logger, actionData, wi, pStats);
+ }
+ wi.reset();
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("ended");
+ mb.append("No CAS found for processing");
logger.info(location, ILogger.null_id, mb.toString());
- wisk.ended(seqNo);
- successWorkItem(actionData, cm, wi);
- pStats.done(wi);
- displayProcessStatistics(logger, actionData, wi, pStats);
}
- wi.reset();
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No CAS found for processing");
- logger.info(location, ILogger.null_id, mb.toString());
+ mb.append("No action data found for processing");
+ logger.warn(location, ILogger.null_id, mb.toString());
}
}
catch(Exception e) {
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionEndTimeout.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionEndTimeout.java?rev=1658419&r1=1658418&r2=1658419&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionEndTimeout.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionEndTimeout.java Mon Feb 9 14:56:17 2015
@@ -59,35 +59,42 @@ public class ActionEndTimeout extends Ac
logger.trace(location, ILogger.null_id, "");
IActionData actionData = (IActionData) objectData;
try {
- IWorkItem wi = actionData.getWorkItem();
- IMetaCas metaCas = wi.getMetaCas();
- JobDriver jd = JobDriver.getInstance();
- CasManager cm = jd.getCasManager();
- JobDriverHelper jdh = JobDriverHelper.getInstance();
- IRemoteWorkerProcess rwp = jdh.getRemoteWorkerProcess(wi);
- if(rwp != null) {
- if(metaCas != null) {
- WiTracker.getInstance().unassign(wi);
- preemptWorkItem(actionData, cm, metaCas);
- IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
- MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
- IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
- int seqNo = metaCasHelper.getSystemKey();
- wisk.preempt(seqNo);
- pStats.preempt(wi);
- displayProcessStatistics(logger, actionData, wi, pStats);
- wi.reset();
+ if(actionData != null) {
+ IWorkItem wi = actionData.getWorkItem();
+ IMetaCas metaCas = wi.getMetaCas();
+ JobDriver jd = JobDriver.getInstance();
+ CasManager cm = jd.getCasManager();
+ JobDriverHelper jdh = JobDriverHelper.getInstance();
+ IRemoteWorkerProcess rwp = jdh.getRemoteWorkerProcess(wi);
+ if(rwp != null) {
+ if(metaCas != null) {
+ WiTracker.getInstance().unassign(wi);
+ preemptWorkItem(actionData, cm, metaCas);
+ IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
+ MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
+ IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
+ int seqNo = metaCasHelper.getSystemKey();
+ wisk.preempt(seqNo);
+ pStats.preempt(wi);
+ displayProcessStatistics(logger, actionData, wi, pStats);
+ wi.reset();
+ }
+ else {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("No CAS found for processing");
+ logger.info(location, ILogger.null_id, mb.toString());
+ }
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No CAS found for processing");
+ mb.append("No remote worker process entry found for processing");
logger.info(location, ILogger.null_id, mb.toString());
}
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No remote worker process entry found for processing");
- logger.info(location, ILogger.null_id, mb.toString());
+ mb.append("No action data found for processing");
+ logger.warn(location, ILogger.null_id, mb.toString());
}
}
catch(Exception e) {
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionGet.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionGet.java?rev=1658419&r1=1658418&r2=1658419&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionGet.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionGet.java Mon Feb 9 14:56:17 2015
@@ -62,60 +62,67 @@ public class ActionGet implements IActio
logger.trace(location, ILogger.null_id, "enter");
IActionData actionData = (IActionData) objectData;
try {
- IWorkItem wi = actionData.getWorkItem();
- IFsm fsm = wi.getFsm();
- IMetaCasTransaction trans = actionData.getMetaCasTransaction();
- IRemoteWorkerThread rwt = new RemoteWorkerThread(trans);
- IRemoteWorkerProcess rwp = new RemoteWorkerProcess(trans);
- //
- JobDriver jd = JobDriver.getInstance();
- JobDriverHelper jdh = JobDriverHelper.getInstance();
- jd.advanceJdState(JdState.Active);
- CasManager cm = jd.getCasManager();
- IMetaCas metaCas = null;
- if(cm.getCasManagerStats().isKillJob()) {
- if(!warned.getAndSet(true)) {
+ if(actionData != null) {
+ IWorkItem wi = actionData.getWorkItem();
+ IFsm fsm = wi.getFsm();
+ IMetaCasTransaction trans = actionData.getMetaCasTransaction();
+ IRemoteWorkerThread rwt = new RemoteWorkerThread(trans);
+ IRemoteWorkerProcess rwp = new RemoteWorkerProcess(trans);
+ //
+ JobDriver jd = JobDriver.getInstance();
+ JobDriverHelper jdh = JobDriverHelper.getInstance();
+ jd.advanceJdState(JdState.Active);
+ CasManager cm = jd.getCasManager();
+ IMetaCas metaCas = null;
+ if(cm.getCasManagerStats().isKillJob()) {
+ if(!warned.getAndSet(true)) {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("this and future requests refused due to pending kill job");
+ logger.info(location, ILogger.null_id, mb.toString());
+ }
+ }
+ else {
+ metaCas = cm.getMetaCas();
+ }
+ wi.setMetaCas(metaCas);
+ trans.setMetaCas(metaCas);
+ IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
+ MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
+ IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
+ //
+ IEvent event = null;
+ //
+ if(metaCas != null) {
+ WiTracker.getInstance().assign(rwt, wi);
+ int seqNo = metaCasHelper.getSystemKey();
+ String wiId = metaCas.getUserKey();
+ String node = rwt.getNodeAddress();
+ String pid = ""+rwt.getPid();
+ String tid = ""+rwt.getTid();
+ wisk.start(seqNo, wiId, node, pid, tid);
+ wisk.queued(seqNo);
+ pStats.dispatch(wi);
+ //
+ wi.setTodGet();
+ event = WiFsm.CAS_Available;
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("this and future requests refused due to pending kill job");
+ JobDriver.getInstance().getMessageHandler().incGets();
+ logger.info(location, ILogger.null_id, mb.toString());
+ }
+ else {
+ event = WiFsm.CAS_Unavailable;
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("No CAS found for processing");
logger.info(location, ILogger.null_id, mb.toString());
}
- }
- else {
- metaCas = cm.getMetaCas();
- }
- wi.setMetaCas(metaCas);
- trans.setMetaCas(metaCas);
- IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
- MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
- IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
- //
- IEvent event = null;
- //
- if(metaCas != null) {
- WiTracker.getInstance().assign(rwt, wi);
- int seqNo = metaCasHelper.getSystemKey();
- String wiId = metaCas.getUserKey();
- String node = rwt.getNodeAddress();
- String pid = ""+rwt.getPid();
- String tid = ""+rwt.getTid();
- wisk.start(seqNo, wiId, node, pid, tid);
- wisk.queued(seqNo);
- pStats.dispatch(wi);
//
- wi.setTodGet();
- event = WiFsm.CAS_Available;
- MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- JobDriver.getInstance().getMessageHandler().incGets();
- logger.info(location, ILogger.null_id, mb.toString());
+ fsm.transition(event, actionData);
}
else {
- event = WiFsm.CAS_Unavailable;
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No CAS found for processing");
- logger.info(location, ILogger.null_id, mb.toString());
+ mb.append("No action data found for processing");
+ logger.warn(location, ILogger.null_id, mb.toString());
}
- //
- fsm.transition(event, actionData);
}
catch(Exception e) {
logger.error(location, ILogger.null_id, e);
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionGetRedux.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionGetRedux.java?rev=1658419&r1=1658418&r2=1658419&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionGetRedux.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionGetRedux.java Mon Feb 9 14:56:17 2015
@@ -48,28 +48,35 @@ public class ActionGetRedux implements I
logger.trace(location, ILogger.null_id, "");
IActionData actionData = (IActionData) objectData;
try {
- IRemoteWorkerThread rwt = actionData.getRemoteWorkerThread();
- ConcurrentHashMap<IRemoteWorkerThread, IWorkItem> map = JobDriver.getInstance().getRemoteThreadMap();
- IWorkItem wi = map.get(rwt);
- IFsm fsm = wi.getFsm();
- IEvent event = WiFsm.CAS_Unavailable;
- if(wi != null) {
- IMetaCas metaCas = wi.getMetaCas();
- if(metaCas != null) {
- event = WiFsm.CAS_Available;
- MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- logger.debug(location, ILogger.null_id, mb.toString());
- actionData.getWorkItem().setMetaCas(metaCas);
- actionData.getMetaCasTransaction().setMetaCas(metaCas);
- }
- else {
- MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No CAS found for processing");
- logger.info(location, ILogger.null_id, mb.toString());
+ if(actionData != null) {
+ IRemoteWorkerThread rwt = actionData.getRemoteWorkerThread();
+ ConcurrentHashMap<IRemoteWorkerThread, IWorkItem> map = JobDriver.getInstance().getRemoteThreadMap();
+ IWorkItem wi = map.get(rwt);
+ IFsm fsm = wi.getFsm();
+ IEvent event = WiFsm.CAS_Unavailable;
+ if(wi != null) {
+ IMetaCas metaCas = wi.getMetaCas();
+ if(metaCas != null) {
+ event = WiFsm.CAS_Available;
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ logger.debug(location, ILogger.null_id, mb.toString());
+ actionData.getWorkItem().setMetaCas(metaCas);
+ actionData.getMetaCasTransaction().setMetaCas(metaCas);
+ }
+ else {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("No CAS found for processing");
+ logger.info(location, ILogger.null_id, mb.toString());
+ }
}
+ //
+ fsm.transition(event, actionData);
+ }
+ else {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("No action data found for processing");
+ logger.warn(location, ILogger.null_id, mb.toString());
}
- //
- fsm.transition(event, actionData);
}
catch(Exception e) {
logger.error(location, ILogger.null_id, e);
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionProcessFailure.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionProcessFailure.java?rev=1658419&r1=1658418&r2=1658419&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionProcessFailure.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionProcessFailure.java Mon Feb 9 14:56:17 2015
@@ -82,50 +82,57 @@ public class ActionProcessFailure extend
logger.trace(location, ILogger.null_id, "");
IActionData actionData = (IActionData) objectData;
try {
- IWorkItem wi = actionData.getWorkItem();
- IMetaCas metaCas = wi.getMetaCas();
- JobDriver jd = JobDriver.getInstance();
- CasManager cm = jd.getCasManager();
- JobDriverHelper jdh = JobDriverHelper.getInstance();
- IRemoteWorkerProcess rwp = jdh.getRemoteWorkerProcess(wi);
- if(rwp != null) {
- IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
- if(metaCas != null) {
- String serializedCas = (String) metaCas.getUserSpaceCas();
- ProxyJobDriverErrorHandler pjdeh = jd.getProxyJobDriverErrorHandler();
- ProxyJobDriverDirective pjdd = pjdeh.handle(serializedCas);
- if(pjdd != null) {
- MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append(Standardize.Label.isKillJob.get()+pjdd.isKillJob());
- mb.append(Standardize.Label.isKillProcess.get()+pjdd.isKillProcess());
- mb.append(Standardize.Label.isKillWorkItem.get()+pjdd.isKillWorkItem());
- logger.info(location, ILogger.null_id, mb.toString());
- if(pjdd.isKillJob()) {
- killJob(cm, wi, metaCas, rwp);
- }
- else if(pjdd.isKillWorkItem()) {
- killWorkItem(cm, wi, metaCas, rwp);
+ if(actionData != null) {
+ IWorkItem wi = actionData.getWorkItem();
+ IMetaCas metaCas = wi.getMetaCas();
+ JobDriver jd = JobDriver.getInstance();
+ CasManager cm = jd.getCasManager();
+ JobDriverHelper jdh = JobDriverHelper.getInstance();
+ IRemoteWorkerProcess rwp = jdh.getRemoteWorkerProcess(wi);
+ if(rwp != null) {
+ IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
+ if(metaCas != null) {
+ String serializedCas = (String) metaCas.getUserSpaceCas();
+ ProxyJobDriverErrorHandler pjdeh = jd.getProxyJobDriverErrorHandler();
+ ProxyJobDriverDirective pjdd = pjdeh.handle(serializedCas);
+ if(pjdd != null) {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append(Standardize.Label.isKillJob.get()+pjdd.isKillJob());
+ mb.append(Standardize.Label.isKillProcess.get()+pjdd.isKillProcess());
+ mb.append(Standardize.Label.isKillWorkItem.get()+pjdd.isKillWorkItem());
+ logger.info(location, ILogger.null_id, mb.toString());
+ if(pjdd.isKillJob()) {
+ killJob(cm, wi, metaCas, rwp);
+ }
+ else if(pjdd.isKillWorkItem()) {
+ killWorkItem(cm, wi, metaCas, rwp);
+ }
+ else {
+ retryWorkItem(actionData, cm, wi, metaCas, rwp);
+ }
}
else {
retryWorkItem(actionData, cm, wi, metaCas, rwp);
}
+ displayProcessStatistics(logger, actionData, wi, pStats);
+ wi.reset();
}
else {
- retryWorkItem(actionData, cm, wi, metaCas, rwp);
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("No CAS found for processing");
+ logger.info(location, ILogger.null_id, mb.toString());
}
- displayProcessStatistics(logger, actionData, wi, pStats);
- wi.reset();
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No CAS found for processing");
+ mb.append("No remote worker process entry found for processing");
logger.info(location, ILogger.null_id, mb.toString());
}
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No remote worker process entry found for processing");
- logger.info(location, ILogger.null_id, mb.toString());
+ mb.append("No action data found for processing");
+ logger.warn(location, ILogger.null_id, mb.toString());
}
}
catch(Exception e) {
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionProcessPreempt.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionProcessPreempt.java?rev=1658419&r1=1658418&r2=1658419&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionProcessPreempt.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionProcessPreempt.java Mon Feb 9 14:56:17 2015
@@ -58,34 +58,41 @@ public class ActionProcessPreempt extend
logger.trace(location, ILogger.null_id, "");
IActionData actionData = (IActionData) objectData;
try {
- IWorkItem wi = actionData.getWorkItem();
- IMetaCas metaCas = wi.getMetaCas();
- JobDriver jd = JobDriver.getInstance();
- CasManager cm = jd.getCasManager();
- JobDriverHelper jdh = JobDriverHelper.getInstance();
- IRemoteWorkerProcess rwp = jdh.getRemoteWorkerProcess(wi);
- if(rwp != null) {
- if(metaCas != null) {
- preemptWorkItem(actionData, cm, metaCas);
- IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
- MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
- IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
- int seqNo = metaCasHelper.getSystemKey();
- wisk.preempt(seqNo);
- pStats.preempt(wi);
- displayProcessStatistics(logger, actionData, wi, pStats);
- wi.reset();
+ if(actionData != null) {
+ IWorkItem wi = actionData.getWorkItem();
+ IMetaCas metaCas = wi.getMetaCas();
+ JobDriver jd = JobDriver.getInstance();
+ CasManager cm = jd.getCasManager();
+ JobDriverHelper jdh = JobDriverHelper.getInstance();
+ IRemoteWorkerProcess rwp = jdh.getRemoteWorkerProcess(wi);
+ if(rwp != null) {
+ if(metaCas != null) {
+ preemptWorkItem(actionData, cm, metaCas);
+ IWorkItemStateKeeper wisk = jd.getWorkItemStateKeeper();
+ MetaCasHelper metaCasHelper = new MetaCasHelper(metaCas);
+ IProcessStatistics pStats = jdh.getProcessStatistics(rwp);
+ int seqNo = metaCasHelper.getSystemKey();
+ wisk.preempt(seqNo);
+ pStats.preempt(wi);
+ displayProcessStatistics(logger, actionData, wi, pStats);
+ wi.reset();
+ }
+ else {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("No CAS found for processing");
+ logger.info(location, ILogger.null_id, mb.toString());
+ }
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No CAS found for processing");
+ mb.append("No remote worker process entry found for processing");
logger.info(location, ILogger.null_id, mb.toString());
}
}
else {
MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- mb.append("No remote worker process entry found for processing");
- logger.info(location, ILogger.null_id, mb.toString());
+ mb.append("No action data found for processing");
+ logger.warn(location, ILogger.null_id, mb.toString());
}
}
catch(Exception e) {
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionSend.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionSend.java?rev=1658419&r1=1658418&r2=1658419&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionSend.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/fsm/wi/ActionSend.java Mon Feb 9 14:56:17 2015
@@ -44,15 +44,23 @@ public class ActionSend implements IActi
logger.trace(location, ILogger.null_id, "");
IActionData actionData = (IActionData) objectData;
try {
- IWorkItem wi = actionData.getWorkItem();
- IMetaCasTransaction trans = actionData.getMetaCasTransaction();
- IMetaCas metaCas = trans.getMetaCas();
- wi.setMetaCas(metaCas);
- //
- TimeoutManager toMgr = TimeoutManager.getInstance();
- toMgr.pendingAck(actionData);
- MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
- logger.info(location, ILogger.null_id, mb.toString());
+ if(actionData != null) {
+ IWorkItem wi = actionData.getWorkItem();
+ IMetaCasTransaction trans = actionData.getMetaCasTransaction();
+ IMetaCas metaCas = trans.getMetaCas();
+ wi.setMetaCas(metaCas);
+ //
+ TimeoutManager toMgr = TimeoutManager.getInstance();
+ toMgr.pendingAck(actionData);
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ logger.info(location, ILogger.null_id, mb.toString());
+ }
+ else {
+ MessageBuffer mb = LoggerHelper.getMessageBuffer(actionData);
+ mb.append("No action data found for processing");
+ logger.warn(location, ILogger.null_id, mb.toString());
+ }
+
}
catch(Exception e) {
logger.error(location, ILogger.null_id, e);