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 2018/08/27 13:31:17 UTC
svn commit: r1839320 [2/2] - in /uima/uima-ducc/trunk:
uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/
uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/config/
uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/event/ uima-ducc-...
Modified: uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/protocol/builtin/DefaultServiceProtocolHandler.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/protocol/builtin/DefaultServiceProtocolHandler.java?rev=1839320&r1=1839319&r2=1839320&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/protocol/builtin/DefaultServiceProtocolHandler.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/protocol/builtin/DefaultServiceProtocolHandler.java Mon Aug 27 13:31:17 2018
@@ -43,6 +43,7 @@ import org.apache.uima.ducc.ps.service.p
import org.apache.uima.ducc.ps.service.transport.IServiceTransport;
import org.apache.uima.ducc.ps.service.transport.TransportException;
import org.apache.uima.ducc.ps.service.transport.XStreamUtils;
+import org.apache.uima.ducc.ps.service.utils.Utils;
import org.apache.uima.util.Level;
import org.apache.uima.util.Logger;
@@ -291,10 +292,12 @@ public class DefaultServiceProtocolHandl
break;
}
catch (Exception e) {
+
logger.log(Level.WARNING,"",e);
}
}
stopLatch.countDown();
+ System.out.println(Utils.getTimestamp()+">>>>>>> "+Utils.getShortClassname(this.getClass())+".call() >>>>>>>>>> Thread ["+Thread.currentThread().getId()+"] "+ " ProtocolHandler stopped requesting new tasks - Stopping processor");
logger.log(Level.INFO,"ProtocolHandler stopped requesting new tasks - Stopping processor");
if ( processor != null ) {
@@ -334,15 +337,23 @@ public class DefaultServiceProtocolHandl
}
@Override
public void quiesceAndStop() {
+ // Use System.out since the logger's ShutdownHook may have closed streams
+ System.out.println(Utils.getTimestamp()+">>>>>>> "+Utils.getShortClassname(this.getClass())+".queisceAndStop()");
+ logger.log(Level.INFO, this.getClass().getName()+" quiesceAndStop() called");
+ // change state of transport to not running but keep connection open
+ // so that other threads can quiesce (send results)
+ transport.stop(true);
+
quiescing = true;
running = false;
- logger.log(Level.INFO, this.getClass().getName()+" quiesceAndStop() called");
try {
// wait for process threads to terminate
stopLatch.await();
} catch( Exception e ) {
}
+ // Use System.out since the logger's ShutdownHook may have closed streams
+ System.out.println(Utils.getTimestamp()+">>>>>>> "+Utils.getShortClassname(this.getClass())+".queisceAndStop() All process threads completed quiesce");
logger.log(Level.INFO, this.getClass().getName()+" All process threads completed quiesce");
}
@Override
Modified: uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/transport/IServiceTransport.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/transport/IServiceTransport.java?rev=1839320&r1=1839319&r2=1839320&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/transport/IServiceTransport.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/transport/IServiceTransport.java Mon Aug 27 13:31:17 2018
@@ -29,6 +29,6 @@ public interface IServiceTransport exten
// initialize transport
public void initialize() throws ServiceInitializationException;
// stop transport
- public void stop();
+ public void stop(boolean quiesce);
public void addRequestorInfo(IMetaTaskTransaction transaction);
}
Modified: uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/transport/http/HttpServiceTransport.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/transport/http/HttpServiceTransport.java?rev=1839320&r1=1839319&r2=1839320&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/transport/http/HttpServiceTransport.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/transport/http/HttpServiceTransport.java Mon Aug 27 13:31:17 2018
@@ -55,6 +55,7 @@ import org.apache.uima.ducc.ps.service.t
import org.apache.uima.ducc.ps.service.transport.TransportStats;
import org.apache.uima.ducc.ps.service.transport.target.NoOpTargetURI;
import org.apache.uima.ducc.ps.service.transport.target.TargetURIFactory;
+import org.apache.uima.ducc.ps.service.utils.Utils;
import org.apache.uima.util.Level;
import org.apache.uima.util.Logger;
@@ -288,7 +289,7 @@ public class HttpServiceTransport implem
} catch (HttpHostConnectException | UnknownHostException ex ) {
if ( stopping ) {
- System.out.println("Process Thread:"+Thread.currentThread().getId()+" HttpHostConnectException ");
+ System.out.println(this.getClass().getName()+".dispatch() Process Thread:"+Thread.currentThread().getId()+" HttpHostConnectException ");
throw new TransportException(ex);
}
@@ -302,6 +303,7 @@ public class HttpServiceTransport implem
if ( log ) {
log = false;
+ System.out.println( this.getClass().getName()+".dispatch() >>>>>>>>>> Unable to connect to target:"+currentTargetUrl.asString()+" - retrying until successfull - with "+threadSleepTime/1000+" seconds wait between retries ");
logger.log(Level.INFO, ">>>>>>>>>> Unable to connect to target:"+currentTargetUrl.asString()+" - retrying until successfull - with "+threadSleepTime/1000+" seconds wait between retries ");
}
serializedResponse = retryUntilSuccessfull(serializedRequest, postMethod);
@@ -351,15 +353,19 @@ public class HttpServiceTransport implem
}
}
- public void stop() {
+ public void stop(boolean quiesce) {
stopping = true;
running = false;
+ // Use System.out since the logger's ShutdownHook may have closed streams
+ System.out.println(Utils.getTimestamp()+">>>>>>> "+Utils.getShortClassname(this.getClass())+" stop() called - mode:"+(quiesce==true?"quiesce":"stop"));
logger.log(Level.INFO,this.getClass().getName()+" stop() called");
- if ( cMgr != null ) {
+ if ( !quiesce && cMgr != null ) {
cMgr.shutdown();
+ System.out.println(Utils.getTimestamp()+">>>>>>> "+Utils.getShortClassname(this.getClass())+" stopped connection mgr");
+ logger.log(Level.INFO,this.getClass().getName()+" stopped connection mgr");
+
}
- logger.log(Level.INFO,this.getClass().getName()+" stopped connection mgr");
}
public static void main(String[] args) {
Modified: uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/utils/Utils.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/utils/Utils.java?rev=1839320&r1=1839319&r2=1839320&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/utils/Utils.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/utils/Utils.java Mon Aug 27 13:31:17 2018
@@ -23,13 +23,24 @@ import java.lang.management.ManagementFa
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLClassLoader;
+import java.text.DateFormat;
import java.util.ArrayList;
+import java.util.Date;
import java.util.HashMap;
import java.util.Properties;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Utils {
+
+ public static String getTimestamp() {
+ Date now = new Date();
+ return DateFormat.getDateTimeInstance().format(now);
+ }
+
+ public static String getShortClassname(Class clz) {
+ return clz.getName().substring(clz.getName().lastIndexOf(".")+1);
+ }
/**
* Create an array of parameters from a whitespace-delimited list (e.g. JVM args or environment assignments.)
* Values containing whitespace must be single- or double-quoted:
Modified: uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IProcessState.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IProcessState.java?rev=1839320&r1=1839319&r2=1839320&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IProcessState.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IProcessState.java Mon Aug 27 13:31:17 2018
@@ -36,6 +36,7 @@ public interface IProcessState extends S
Killed, // Agent forcefully killed the process
KillProcess, // UIMA-AS Ducc Service Wrapper requesting agent to kill the process
Abandoned, // Process abandoned
+ Rejected, // Agent is quiescing, rejects new process start request
Undefined, // None of the above
};