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 2014/02/17 13:49:42 UTC
svn commit: r1568966 -
/uima/sandbox/uima-ducc/branches/uima-ducc-1.0.0/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java
Author: degenaro
Date: Mon Feb 17 12:49:42 2014
New Revision: 1568966
URL: http://svn.apache.org/r1568966
Log:
UIMA-3599 DUCC Job Driver (JD) does not unregister re-used CAS's from the callback tracker map
Modified:
uima/sandbox/uima-ducc/branches/uima-ducc-1.0.0/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java
Modified: uima/sandbox/uima-ducc/branches/uima-ducc-1.0.0/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/branches/uima-ducc-1.0.0/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java?rev=1568966&r1=1568965&r2=1568966&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/branches/uima-ducc-1.0.0/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java (original)
+++ uima/sandbox/uima-ducc/branches/uima-ducc-1.0.0/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java Mon Feb 17 12:49:42 2014
@@ -156,7 +156,7 @@ public class JobDriver extends Thread im
// Prepare UIMA-AS client instance and multiple threads
ClientThreadFactory factory = new ClientThreadFactory("UimaASClientThread");
queue = new LinkedBlockingQueue<Runnable>();
- executor = new DynamicThreadPoolExecutor(1, 1, 10, TimeUnit.MICROSECONDS, queue, factory, null);
+ executor = new DynamicThreadPoolExecutor(1, 1, 10, TimeUnit.MICROSECONDS, queue, factory, job.getDuccId());
client = new BaseUIMAAsynchronousEngine_impl();
workItemListener = new WorkItemListener(this);
client.addStatusCallbackListener(workItemListener);
@@ -1221,6 +1221,8 @@ public class JobDriver extends Thread im
public void start(WorkItem workItem) {
String location = "start";
try {
+ String casId = workItem.getCasId();
+ callbackUnregister(casId);
registerCasPendingLocation(this, ""+workItem.getSeqNo(), workItem.getCasId());
casWorkItemMap.put(workItem.getCasId(), workItem);
duccOut.info(location, workItem.getJobId(), workItem.getProcessId(), "seqNo:"+workItem.getSeqNo()+" "+"wiId:"+workItem.getCasDocumentText());
@@ -1518,12 +1520,14 @@ public class JobDriver extends Thread im
}
public boolean callbackRegister(String casId, String name) {
+ String location = "callbackRegister";
boolean retVal = false;
synchronized(this) {
if(casId != null) {
if(name != null) {
if(!callbackMap.containsKey(casId)) {
callbackMap.put(casId, name);
+ duccOut.trace(location, jobid, casId);
retVal = true;
}
}
@@ -1533,9 +1537,11 @@ public class JobDriver extends Thread im
}
public void callbackUnregister(String casId) {
+ String location = "callbackUnregister";
synchronized(this) {
if(casId != null) {
callbackMap.remove(casId);
+ duccOut.trace(location, jobid, casId);
}
}
}