svn merge -c 1572220 from trunk for HADOOP-10368. InputStream is not closed in VersionInfo ctor.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1572221 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Tsz-wo Sze 2014-02-26 19:58:38 +00:00
parent abdb0ef402
commit b1d64419ac
2 changed files with 10 additions and 3 deletions

View File

@ -72,6 +72,9 @@ Release 2.4.0 - UNRELEASED
HADOOP-10070. RPC client doesn't use per-connection conf to determine
server's expected Kerberos principal name. (atm)
HADOOP-10368. InputStream is not closed in VersionInfo ctor.
(Tsuyoshi OZAWA via szetszwo)
Release 2.3.1 - UNRELEASED
INCOMPATIBLE CHANGES

View File

@ -31,6 +31,7 @@ import org.apache.hadoop.classification.InterfaceStability;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
import org.apache.hadoop.io.IOUtils;
/**
* This class returns build information about Hadoop components.
@ -45,16 +46,19 @@ public class VersionInfo {
protected VersionInfo(String component) {
info = new Properties();
String versionInfoFile = component + "-version-info.properties";
InputStream is = null;
try {
InputStream is = Thread.currentThread().getContextClassLoader()
is = Thread.currentThread().getContextClassLoader()
.getResourceAsStream(versionInfoFile);
if (is == null) {
throw new IOException("Resource not found");
}
info.load(is);
} catch (IOException ex) {
LogFactory.getLog(getClass()).warn("Could not read '" +
versionInfoFile + "', " + ex.toString(), ex);
LogFactory.getLog(getClass()).warn("Could not read '" +
versionInfoFile + "', " + ex.toString(), ex);
} finally {
IOUtils.closeStream(is);
}
}