Author: degenaro Date: Wed May 29 19:32:49 2013 New Revision: 1487606 URL: http://svn.apache.org/r1487606 Log: UIMA-2944 DUCC Job Driver (JD) reports stale limbo status
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/IJobDriverAccess.java uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriverComponent.java uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/client/CasLimbo.java uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/client/CasSource.java Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/IJobDriverAccess.java URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/IJobDriverAccess.java?rev=1487606&r1=1487605&r2=1487606&view=diff ============================================================================== --- uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/IJobDriverAccess.java (original) +++ uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/IJobDriverAccess.java Wed May 29 19:32:49 2013 @@ -38,4 +38,5 @@ public interface IJobDriverAccess { public void accountingWorkItemIsRetry(DuccId processId); public void accountingWorkItemIsError(DuccId processId); public void accountingWorkItemIsDone(DuccId processId, long time); + public void rectifyStatus(); } Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java?rev=1487606&r1=1487605&r2=1487606&view=diff ============================================================================== --- uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java (original) +++ uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java Wed May 29 19:32:49 2013 @@ -1360,5 +1360,11 @@ public class JobDriver extends Thread im duccErr.error(location, djid, dpid, exception); } } + + public void rectifyStatus() { + if(casSource != null) { + casSource.rectifyStatus(); + } + } } Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriverComponent.java URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriverComponent.java?rev=1487606&r1=1487605&r2=1487606&view=diff ============================================================================== --- uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriverComponent.java (original) +++ uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriverComponent.java Wed May 29 19:32:49 2013 @@ -261,6 +261,7 @@ implements IJobDriverComponent { duccOut.debug(methodName, null, duccMsg.fetch("publishing state")); jdStateDuccEvent = new JdStateDuccEvent(); if(thread != null) { + thread.rectifyStatus(); DriverStatusReport dsr = thread.getDriverStatusReportCopy(); if(dsr == null) { duccOut.debug(methodName, null, duccMsg.fetch("dsr is null")); Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/client/CasLimbo.java URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/client/CasLimbo.java?rev=1487606&r1=1487605&r2=1487606&view=diff ============================================================================== --- uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/client/CasLimbo.java (original) +++ uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/client/CasLimbo.java Wed May 29 19:32:49 2013 @@ -195,4 +195,24 @@ public class CasLimbo { } } } + + public void rectifyStatus() { + String location = "rectifyStatus"; + Iterator<CasTuple> iterator = tupleQueue.iterator(); + if(!iterator.hasNext()) { + duccOut.trace(location, getJobId(), "empty"); + } + else { + while(iterator.hasNext()) { + CasTuple casTuple = iterator.next(); + if(isAvailable(casTuple)) { + jd.getDriverStatusReportLive().limboRemove(casTuple.getSeqno(),casTuple.getDuccId()); + duccOut.debug(location, getJobId(), casTuple.getDuccId(), "available"+" "+"seqNo:"+casTuple.getSeqno()+" "+"wiId:"+casTuple.getCasDocumentText()); + } + else { + duccOut.trace(location, getJobId(), casTuple.getDuccId(), "not available"+" "+"seqNo:"+casTuple.getSeqno()+" "+"wiId:"+casTuple.getCasDocumentText()); + } + } + } + } } Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/client/CasSource.java URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/client/CasSource.java?rev=1487606&r1=1487605&r2=1487606&view=diff ============================================================================== --- uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/client/CasSource.java (original) +++ uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/client/CasSource.java Wed May 29 19:32:49 2013 @@ -294,4 +294,10 @@ public class CasSource { public int getSeqNo() { return seqNo.get(); } + + public void rectifyStatus() { + if(casLimbo != null) { + casLimbo.rectifyStatus(); + } + } }