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/07/23 21:58:09 UTC
svn commit: r1506249 -
/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java
Author: cwiklik
Date: Tue Jul 23 19:58:09 2013
New Revision: 1506249
URL: http://svn.apache.org/r1506249
Log:
UIMA-3101 Closed input streams after use
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java?rev=1506249&r1=1506248&r2=1506249&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java Tue Jul 23 19:58:09 2013
@@ -213,7 +213,7 @@ public class CGroupsManager {
public void kill(final String user, final String pid) {
final String methodName = "kill";
-
+ InputStream is = null;
try {
String c_launcher_path = Utils.resolvePlaceholderIfExists(
System.getProperty("ducc.agent.launcher.ducc_spawn_path"),
@@ -245,7 +245,7 @@ public class CGroupsManager {
ProcessBuilder pb = new ProcessBuilder(duccling_nolog);
pb.redirectErrorStream(true);
java.lang.Process killedProcess = pb.start();
- InputStream is = killedProcess.getInputStream();
+ is = killedProcess.getInputStream();
BufferedReader reader = new BufferedReader(
new InputStreamReader(is));
// String line = null;
@@ -271,6 +271,12 @@ public class CGroupsManager {
} catch (Exception e) {
agentLogger.error(methodName, null,e );
+ } finally {
+ if ( is != null ) {
+ try {
+ is.close();
+ } catch( Exception e) {}
+ }
}
}
public String getContainerId(ManagedProcess managedProcess) {
@@ -407,6 +413,7 @@ public class CGroupsManager {
private int launchCommand(String[] command, boolean useDuccSpawn,
String userId, String containerId) throws Exception {
String[] commandLine = null;
+ InputStreamReader in = null;
try {
//
// Use ducc_ling (c code) as a launcher for the actual process. The
@@ -438,7 +445,7 @@ public class CGroupsManager {
java.lang.Process process = processLauncher.start();
- InputStreamReader in = new InputStreamReader(
+ in = new InputStreamReader(
process.getInputStream());
BufferedReader reader = new BufferedReader(in);
String line;
@@ -465,6 +472,12 @@ public class CGroupsManager {
e.printStackTrace();
}
+ } finally {
+ if ( in != null ) {
+ try {
+ in.close();
+ } catch( Exception exx) {}
+ }
}
return -1; // failure
}