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/05/03 15:33:00 UTC

svn commit: r1830833 - /uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/processor/uima/UimaServiceProcessor.java

Author: cwiklik
Date: Thu May  3 15:33:00 2018
New Revision: 1830833

URL: http://svn.apache.org/viewvc?rev=1830833&view=rev
Log:
UIMA-5756 disabled collection of init stats

Modified:
    uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/processor/uima/UimaServiceProcessor.java

Modified: uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/processor/uima/UimaServiceProcessor.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/processor/uima/UimaServiceProcessor.java?rev=1830833&r1=1830832&r2=1830833&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/processor/uima/UimaServiceProcessor.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/processor/uima/UimaServiceProcessor.java Thu May  3 15:33:00 2018
@@ -79,6 +79,7 @@ public class UimaServiceProcessor implem
 	private ServiceConfiguration serviceConfiguration;
 	private ScheduledThreadPoolExecutor executor = null;
 	private IServiceMonitor monitor;
+	private volatile boolean notifyOnRunning = true;
 	static {
 		// try to get platform MBean Server (Java 1.5 only)
 		try {
@@ -108,19 +109,19 @@ public class UimaServiceProcessor implem
 		monitor =
 				new RemoteStateObserver(serviceConfiguration, logger);
 		
-		executor = new ScheduledThreadPoolExecutor(1);
-		executor.prestartAllCoreThreads();
+//		executor = new ScheduledThreadPoolExecutor(1);
+//		executor.prestartAllCoreThreads();
 		// Instantiate a UIMA AS jmx monitor to poll for status of the AE.
 		// This monitor checks if the AE is initializing or ready.
-		initStateMonitor = 
-				new JmxAEProcessInitMonitor(monitor, logger);
+//		initStateMonitor = 
+//				new JmxAEProcessInitMonitor(monitor, logger);
 		/*
 		 * This will run UimaAEJmxMonitor every 30
 		 * seconds with an initial delay of 20 seconds. This monitor polls
 		 * initialization status of AE.
 		 */
-		executor.scheduleAtFixedRate(initStateMonitor, 20, 30, TimeUnit.SECONDS);
-
+//		executor.scheduleAtFixedRate(initStateMonitor, 20, 30, TimeUnit.SECONDS);
+		monitor.onStateChange(IServiceState.State.Initializing.toString(), new Properties());
 	}
 	public void setScaleout(int howManyThreads) {
 		this.scaleout = howManyThreads;
@@ -192,13 +193,25 @@ public class UimaServiceProcessor implem
 		// process is being called
 		try {
 			initStateShutdownLock.lockInterruptibly();
+			if ( notifyOnRunning ) {
+				notifyOnRunning = false;
+				monitor.onStateChange(IServiceState.State.Running.toString(), new Properties());
+			}
+
+		} catch( InterruptedException e) {
+			Thread.currentThread().interrupt();
+		} finally {
+			initStateShutdownLock.unlock();
+		}
+		/*
+		try {
+			initStateShutdownLock.lockInterruptibly();
 			if ( !executor.isTerminating() && !executor.isTerminated() && !executor.isShutdown() ) {
 				// send final AE initialization report before we stop the collecting thread
 				initStateMonitor.updateAgentWhenRunning();
-				
 				executor.shutdown();
 				executor.awaitTermination(0, TimeUnit.SECONDS);
-				monitor.onStateChange(IServiceState.State.Running.toString(), new Properties());
+		//monitor.onStateChange(IServiceState.State.Running.toString(), new Properties());
 			}
 
 		} catch( InterruptedException e) {
@@ -206,7 +219,7 @@ public class UimaServiceProcessor implem
 		} finally {
 			initStateShutdownLock.unlock();
 		}
-		
+*/		
 		CAS cas = casPool.getCas();
 		IProcessResult result;