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();
}