Merge -r 1170285:1170286 from branch-0.20-security to trunk to fix MAPREDUCE-2549.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1170288 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Arun Murthy 2011-09-13 18:33:22 +00:00
parent 88ff272cfd
commit 4d90df82a9
3 changed files with 34 additions and 13 deletions

View File

@ -36,6 +36,7 @@
import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.eclipse.Activator; import org.apache.hadoop.eclipse.Activator;
import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.io.IOUtils;
import org.apache.hadoop.mapred.JobClient; import org.apache.hadoop.mapred.JobClient;
import org.apache.hadoop.mapred.JobConf; import org.apache.hadoop.mapred.JobConf;
import org.apache.hadoop.mapred.JobID; import org.apache.hadoop.mapred.JobID;
@ -420,8 +421,14 @@ public void setLocationName(String newName) {
*/ */
public void storeSettingsToFile(File file) throws IOException { public void storeSettingsToFile(File file) throws IOException {
FileOutputStream fos = new FileOutputStream(file); FileOutputStream fos = new FileOutputStream(file);
this.conf.writeXml(fos); try {
fos.close(); this.conf.writeXml(fos);
fos.close();
fos = null;
} finally {
IOUtils.closeStream(fos);
}
} }
/* @inheritDoc */ /* @inheritDoc */

View File

@ -28,6 +28,7 @@
import org.apache.hadoop.eclipse.ErrorMessageDialog; import org.apache.hadoop.eclipse.ErrorMessageDialog;
import org.apache.hadoop.eclipse.server.HadoopServer; import org.apache.hadoop.eclipse.server.HadoopServer;
import org.apache.hadoop.eclipse.server.JarModule; import org.apache.hadoop.eclipse.server.JarModule;
import org.apache.hadoop.io.IOUtils;
import org.apache.hadoop.mapred.JobConf; import org.apache.hadoop.mapred.JobConf;
import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.CoreException;
@ -164,8 +165,13 @@ public boolean performFinish() {
// confDir); // confDir);
File confFile = new File(confDir, "core-site.xml"); File confFile = new File(confDir, "core-site.xml");
FileOutputStream fos = new FileOutputStream(confFile); FileOutputStream fos = new FileOutputStream(confFile);
conf.writeXml(fos); try {
fos.close(); conf.writeXml(fos);
fos.close();
fos = null;
} finally {
IOUtils.closeStream(fos);
}
} catch (IOException ioe) { } catch (IOException ioe) {
ioe.printStackTrace(); ioe.printStackTrace();

View File

@ -23,6 +23,7 @@
import java.util.*; import java.util.*;
import org.apache.hadoop.classification.InterfaceAudience; import org.apache.hadoop.classification.InterfaceAudience;
import org.apache.hadoop.io.IOUtils;
/** /**
* This is a class used to get the current environment * This is a class used to get the current environment
@ -62,17 +63,24 @@ public Environment() throws IOException {
Process pid = Runtime.getRuntime().exec(command); Process pid = Runtime.getRuntime().exec(command);
BufferedReader in = new BufferedReader(new InputStreamReader(pid.getInputStream())); BufferedReader in = new BufferedReader(new InputStreamReader(pid.getInputStream()));
while (true) { try {
String line = in.readLine(); while (true) {
if (line == null) break; String line = in.readLine();
int p = line.indexOf("="); if (line == null)
if (p != -1) { break;
String name = line.substring(0, p); int p = line.indexOf("=");
String value = line.substring(p + 1); if (p != -1) {
setProperty(name, value); String name = line.substring(0, p);
String value = line.substring(p + 1);
setProperty(name, value);
}
} }
in.close();
in = null;
} finally {
IOUtils.closeStream(in);
} }
in.close();
try { try {
pid.waitFor(); pid.waitFor();
} catch (InterruptedException e) { } catch (InterruptedException e) {