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 2018/05/24 14:21:20 UTC
svn commit: r1832174 - in /uima/uima-ducc/trunk:
uima-ducc-common/src/main/java/org/apache/uima/ducc/common/boot/DuccDaemonRuntimeProperties.java
uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/state/monitoring/NodeState.java
Author: degenaro
Date: Thu May 24 14:21:19 2018
New Revision: 1832174
URL: http://svn.apache.org/viewvc?rev=1832174&view=rev
Log:
UIMA-5742 Reliable DUCC - fix open file descriptor leak
Modified:
uima/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/boot/DuccDaemonRuntimeProperties.java
uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/state/monitoring/NodeState.java
Modified: uima/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/boot/DuccDaemonRuntimeProperties.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/boot/DuccDaemonRuntimeProperties.java?rev=1832174&r1=1832173&r2=1832174&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/boot/DuccDaemonRuntimeProperties.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/boot/DuccDaemonRuntimeProperties.java Thu May 24 14:21:19 2018
@@ -94,6 +94,7 @@ public class DuccDaemonRuntimeProperties
FileInputStream fis;
fis = new FileInputStream(file);
properties.load(fis);
+ fis.close();
}
catch (FileNotFoundException e) {
@@ -115,6 +116,7 @@ public class DuccDaemonRuntimeProperties
FileOutputStream fos;
fos = new FileOutputStream(file);
properties.store(fos,"");
+ fos.close();
}
catch (IOException e) {
System.out.println("Error writing file: "+fileName);
@@ -159,7 +161,7 @@ public class DuccDaemonRuntimeProperties
FileInputStream fis;
fis = new FileInputStream(file);
properties.load(fis);
-
+ fis.close();
}
catch (FileNotFoundException e) {
System.out.println("File not found: "+fileName);
@@ -177,6 +179,7 @@ public class DuccDaemonRuntimeProperties
FileOutputStream fos;
fos = new FileOutputStream(file);
properties.store(fos,"");
+ fos.close();
}
catch (IOException e) {
System.out.println("Error writing file: "+fileName);
Modified: uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/state/monitoring/NodeState.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/state/monitoring/NodeState.java?rev=1832174&r1=1832173&r2=1832174&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/state/monitoring/NodeState.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/state/monitoring/NodeState.java Thu May 24 14:21:19 2018
@@ -123,8 +123,22 @@ public class NodeState implements INodeS
private long sleep_seconds = 60;
private long sleep_millis = sleep_seconds*1000;
+ private IRmPersistence persistence = null;
+
public Monitor() {
- up();
+ initialize();
+ }
+
+ private void initialize() {
+ String location = "initialize";
+ try {
+ up();
+ persistence = configure();
+ }
+ catch(Exception e) {
+ down();
+ logger.error(location, jobid, e);
+ }
}
// fetch new results from datastore every interval
@@ -176,8 +190,9 @@ public class NodeState implements INodeS
String location = "fetch";
Map<String, Map<String, Object>> retVal = map_empty;
try {
- IRmPersistence persistence = configure();
- retVal = persistence.getAllMachines();
+ if(persistence != null) {
+ retVal = persistence.getAllMachines();
+ }
logger.debug(location, jobid, "map:"+retVal.size());
}
catch(Exception e) {