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 2016/05/20 20:58:08 UTC

svn commit: r1744793 - /uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/cas/CasManagerStats.java

Author: degenaro
Date: Fri May 20 20:58:08 2016
New Revision: 1744793

URL: http://svn.apache.org/viewvc?rev=1744793&view=rev
Log:
UIMA-4938 DUCC Job Driver (JD) erroneously determines: fewer work items than expected

- record to log relevant details that lead to conclusion of prematurity, once.

Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/cas/CasManagerStats.java

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/cas/CasManagerStats.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/cas/CasManagerStats.java?rev=1744793&r1=1744792&r2=1744793&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/cas/CasManagerStats.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-container/src/main/java/org/apache/uima/ducc/container/jd/cas/CasManagerStats.java Fri May 20 20:58:08 2016
@@ -46,6 +46,8 @@ public class CasManagerStats {
 	private AtomicBoolean seenAll = new AtomicBoolean(false);
 	private AtomicBoolean killJob = new AtomicBoolean(false);
 	
+	private AtomicBoolean warned = new AtomicBoolean(false);
+	
 	private ConcurrentHashMap<String,AtomicInteger> retryReasonsMap = new ConcurrentHashMap<String,AtomicInteger>();
 	
 	public boolean isExhausted() {
@@ -71,14 +73,20 @@ public class CasManagerStats {
 				}
 			}
 		}
+		// if premature, warn to log file once
 		if(retVal) {
-			MessageBuffer mb = new MessageBuffer();
-			mb.append("seenAll:"+seenAll.get());
-			mb.append("crGets:"+crGets.get());
-			mb.append("crTotal:"+crTotal.get());
-			mb.append("endSuccess:"+endSuccess.get());
-			mb.append("endFailure:"+endFailure.get());
-			logger.debug(location, ILogger.null_id, mb.toString());
+			boolean expect = false;
+			boolean update = true;
+			boolean success = warned.compareAndSet(expect, update);
+			if(success) {
+				MessageBuffer mb = new MessageBuffer();
+				mb.append("seenAll:"+seenAll.get());
+				mb.append("crGets:"+crGets.get());
+				mb.append("crTotal:"+crTotal.get());
+				mb.append("endSuccess:"+endSuccess.get());
+				mb.append("endFailure:"+endFailure.get());
+				logger.warn(location, ILogger.null_id, mb.toString());
+			}
 		}
 		return retVal;
 	}