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 2013/09/12 20:56:59 UTC

svn commit: r1522694 - /uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/

Author: cwiklik
Date: Thu Sep 12 18:56:58 2013
New Revision: 1522694

URL: http://svn.apache.org/r1522694
Log:
UIMA-3263 Fixed thread leak

Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/BaseProcessor.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/DefaultProcessMetricsProcessor.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxNodeMetricsProcessor.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/ProcessMetricsProcessor.java

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/BaseProcessor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/BaseProcessor.java?rev=1522694&r1=1522693&r2=1522694&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/BaseProcessor.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/BaseProcessor.java Thu Sep 12 18:56:58 2013
@@ -19,4 +19,7 @@
 package org.apache.uima.ducc.agent.processors;
 
 public abstract class BaseProcessor {
+	public void stop() {
+		
+	}
 }

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/DefaultProcessMetricsProcessor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/DefaultProcessMetricsProcessor.java?rev=1522694&r1=1522693&r2=1522694&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/DefaultProcessMetricsProcessor.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/DefaultProcessMetricsProcessor.java Thu Sep 12 18:56:58 2013
@@ -33,5 +33,10 @@ public class DefaultProcessMetricsProces
 	}
 	public void process(Exchange arg0) throws Exception {
 	}
+	@Override
+	public void stop() {
+		// TODO Auto-generated method stub
+		
+	}
 
 }

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxNodeMetricsProcessor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxNodeMetricsProcessor.java?rev=1522694&r1=1522693&r2=1522694&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxNodeMetricsProcessor.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxNodeMetricsProcessor.java Thu Sep 12 18:56:58 2013
@@ -59,7 +59,7 @@ public class LinuxNodeMetricsProcessor e
 			String loadAvgFilePath) throws FileNotFoundException {
 		super();
 		this.agent = agent;
-		pool = Executors.newFixedThreadPool(PROCFILES);
+		pool = Executors.newCachedThreadPool();
 		// open files and keep them open until stop() is called
 		memInfoFile = new RandomAccessFile(memInfoFilePath, "r");
 		loadAvgFile = new RandomAccessFile(loadAvgFilePath, "r");

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java?rev=1522694&r1=1522693&r2=1522694&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java Thu Sep 12 18:56:58 2013
@@ -86,7 +86,7 @@ public class LinuxProcessMetricsProcesso
     processStatFile = new RandomAccessFile(processStatFilePath, "r");
     this.managedProcess = managedProcess;
     this.agent = agent;
-    pool = Executors.newFixedThreadPool(30);
+    pool = Executors.newCachedThreadPool();
     this.process = process;
     gcStatsCollector = new DuccGarbageStatsCollector(logger, process);
 
@@ -105,7 +105,16 @@ public class LinuxProcessMetricsProcesso
     }
     closed = false;
   }
+  public void stop() {
+	  try {
+		  if ( pool != null ) {
+			  pool.shutdown();
+		  }
+	  } catch( Exception e) {
+          logger.error("LinuxProcessMetricsProcessor.stop()", null, e);
 
+	  }
+  }
   public void close() {
 	  closed = true;
     try {
@@ -115,7 +124,7 @@ public class LinuxProcessMetricsProcesso
       if ( processStatFile != null && processStatFile.getFD().valid()) {
     	  processStatFile.close();
       }
-     
+      this.stop();
     } catch (Exception e) {
       e.printStackTrace();
     }
@@ -390,4 +399,5 @@ public class LinuxProcessMetricsProcesso
      
     
   }
+  
 }

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/ProcessMetricsProcessor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/ProcessMetricsProcessor.java?rev=1522694&r1=1522693&r2=1522694&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/ProcessMetricsProcessor.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/ProcessMetricsProcessor.java Thu Sep 12 18:56:58 2013
@@ -21,5 +21,5 @@ package org.apache.uima.ducc.agent.proce
 import org.apache.camel.Processor;
 
 public interface ProcessMetricsProcessor extends Processor {
-
+	public void stop();
 }