You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pig.apache.org by ol...@apache.org on 2009/10/16 02:16:58 UTC
svn commit: r825712 - in /hadoop/pig/trunk: CHANGES.txt
src/org/apache/pig/Main.java src/org/apache/pig/impl/io/FileLocalizer.java
src/org/apache/pig/impl/util/PropertiesUtil.java
src/org/apache/pig/tools/parameters/PreprocessorContext.java
Author: olga
Date: Fri Oct 16 00:16:57 2009
New Revision: 825712
URL: http://svn.apache.org/viewvc?rev=825712&view=rev
Log:
PIG-1009: FINDBUGS: OS_OPEN_STREAM: Method may fail to close stream (olgan)
Modified:
hadoop/pig/trunk/CHANGES.txt
hadoop/pig/trunk/src/org/apache/pig/Main.java
hadoop/pig/trunk/src/org/apache/pig/impl/io/FileLocalizer.java
hadoop/pig/trunk/src/org/apache/pig/impl/util/PropertiesUtil.java
hadoop/pig/trunk/src/org/apache/pig/tools/parameters/PreprocessorContext.java
Modified: hadoop/pig/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/pig/trunk/CHANGES.txt?rev=825712&r1=825711&r2=825712&view=diff
==============================================================================
--- hadoop/pig/trunk/CHANGES.txt (original)
+++ hadoop/pig/trunk/CHANGES.txt Fri Oct 16 00:16:57 2009
@@ -26,6 +26,8 @@
IMPROVEMENTS
+PIG-1009: FINDBUGS: OS_OPEN_STREAM: Method may fail to close stream (olgan)
+
PIG-1008: FINDBUGS: NP_TOSTRING_COULD_RETURN_NULL (olgan)
PIG-1018: FINDBUGS: NM_FIELD_NAMING_CONVENTION: Field names should start with
Modified: hadoop/pig/trunk/src/org/apache/pig/Main.java
URL: http://svn.apache.org/viewvc/hadoop/pig/trunk/src/org/apache/pig/Main.java?rev=825712&r1=825711&r2=825712&view=diff
==============================================================================
--- hadoop/pig/trunk/src/org/apache/pig/Main.java (original)
+++ hadoop/pig/trunk/src/org/apache/pig/Main.java Fri Oct 16 00:16:57 2009
@@ -463,15 +463,20 @@
}
Properties props = new Properties();
+ FileReader propertyReader = null;
if (log4jconf != null) {
try {
- FileReader propertyReader = new FileReader(log4jconf);
+ propertyReader = new FileReader(log4jconf);
props.load(propertyReader);
}
catch (IOException e)
{
System.err.println("Warn: Cannot open log4j properties file, use default");
}
+ finally
+ {
+ if (propertyReader != null) try {propertyReader.close();} catch(Exception e) {}
+ }
}
if (props.size() == 0) {
props.setProperty("log4j.rootLogger", "INFO, PIGCONSOLE");
Modified: hadoop/pig/trunk/src/org/apache/pig/impl/io/FileLocalizer.java
URL: http://svn.apache.org/viewvc/hadoop/pig/trunk/src/org/apache/pig/impl/io/FileLocalizer.java?rev=825712&r1=825711&r2=825712&view=diff
==============================================================================
--- hadoop/pig/trunk/src/org/apache/pig/impl/io/FileLocalizer.java (original)
+++ hadoop/pig/trunk/src/org/apache/pig/impl/io/FileLocalizer.java Fri Oct 16 00:16:57 2009
@@ -664,12 +664,16 @@
if (exitVal != 0)
return null;
String line = null;
+ BufferedReader br = null;
try {
InputStreamReader isr = new InputStreamReader(p.getInputStream());
- BufferedReader br = new BufferedReader(isr);
+ br = new BufferedReader(isr);
line = br.readLine();
+ isr.close();
} catch (IOException e) {
return null;
+ } finally {
+ if (br != null) try {br.close();} catch (Exception e) {}
}
return line;
}
Modified: hadoop/pig/trunk/src/org/apache/pig/impl/util/PropertiesUtil.java
URL: http://svn.apache.org/viewvc/hadoop/pig/trunk/src/org/apache/pig/impl/util/PropertiesUtil.java?rev=825712&r1=825711&r2=825712&view=diff
==============================================================================
--- hadoop/pig/trunk/src/org/apache/pig/impl/util/PropertiesUtil.java (original)
+++ hadoop/pig/trunk/src/org/apache/pig/impl/util/PropertiesUtil.java Fri Oct 16 00:16:57 2009
@@ -35,9 +35,11 @@
private final static Log log = LogFactory.getLog(PropertiesUtil.class);
public static void loadPropertiesFromFile(Properties properties) {
+ InputStream inputStream = null;
+ BufferedInputStream bis = null;
try {
Class<PropertiesUtil> clazz = PropertiesUtil.class;
- InputStream inputStream = clazz
+ inputStream = clazz
.getResourceAsStream(PROPERTIES_FILE);
if (inputStream == null) {
String msg = "no pig.properties configuration file available in the classpath";
@@ -47,6 +49,8 @@
}
} catch (Exception e) {
log.error("unable to parse pig.properties :", e);
+ } finally {
+ if (inputStream != null) try {inputStream.close();} catch (Exception e) {}
}
Properties pigrcProps = new Properties() ;
@@ -55,10 +59,14 @@
if (pigrcFile.exists()) {
log.warn(pigrcFile.getAbsolutePath()
+ " exists but will be deprecated soon. Use conf/pig.properties instead!");
- pigrcProps.load(new BufferedInputStream(new FileInputStream(pigrcFile))) ;
+
+ bis = new BufferedInputStream(new FileInputStream(pigrcFile));
+ pigrcProps.load(bis) ;
}
} catch (Exception e) {
log.error("unable to parse .pigrc :", e);
+ } finally {
+ if (bis != null) try {bis.close();} catch (Exception e) {}
}
// Now put all the entries from pigrcProps into properties, but
Modified: hadoop/pig/trunk/src/org/apache/pig/tools/parameters/PreprocessorContext.java
URL: http://svn.apache.org/viewvc/hadoop/pig/trunk/src/org/apache/pig/tools/parameters/PreprocessorContext.java?rev=825712&r1=825711&r2=825712&view=diff
==============================================================================
--- hadoop/pig/trunk/src/org/apache/pig/tools/parameters/PreprocessorContext.java (original)
+++ hadoop/pig/trunk/src/org/apache/pig/tools/parameters/PreprocessorContext.java Fri Oct 16 00:16:57 2009
@@ -171,9 +171,10 @@
throw rte;
}
+ BufferedReader br = null;
try{
InputStreamReader isr = new InputStreamReader(p.getInputStream());
- BufferedReader br = new BufferedReader(isr);
+ br = new BufferedReader(isr);
String line=null;
while ( (line = br.readLine()) != null){
streamData+=(line+"\n");
@@ -181,11 +182,13 @@
} catch (IOException e){
RuntimeException rte = new RuntimeException("IO Exception while executing shell command : "+e.getMessage() , e);
throw rte;
+ } finally {
+ if (br != null) try {br.close();} catch(Exception e) {}
}
-
+
try {
InputStreamReader isr = new InputStreamReader(p.getErrorStream());
- BufferedReader br = new BufferedReader(isr);
+ br = new BufferedReader(isr);
String line=null;
while ( (line = br.readLine()) != null ) {
streamError += (line+"\n");
@@ -194,6 +197,8 @@
} catch (Exception e) {
RuntimeException rte = new RuntimeException("IO Exception while executing shell command : "+e.getMessage() , e);
throw rte;
+ } finally {
+ if (br != null) try {br.close();} catch(Exception e) {}
}
return streamData.trim();