Possible resource leaks in hadoop core code -------------------------------------------
Key: HADOOP-7090 URL: https://issues.apache.org/jira/browse/HADOOP-7090 Project: Hadoop Common Issue Type: Bug Affects Versions: 0.21.0 Reporter: Gokul It is always a good practice to close the IO streams in a finally block.. For example, look at the following piece of code in the Writer class of BloomMapFile {code:title=BloomMapFile .java|borderStyle=solid} public synchronized void close() throws IOException { super.close(); DataOutputStream out = fs.create(new Path(dir, BLOOM_FILE_NAME), true); bloomFilter.write(out); out.flush(); out.close(); } {code} If an exception occurs during fs.create or on any other line, out.close() will not be executed.. The following can reduce the scope of resorce leaks.. {code:title=BloomMapFile .java|borderStyle=solid} public synchronized void close() throws IOException { super.close(); DataOutputStream out = null; try{ out = fs.create(new Path(dir, BLOOM_FILE_NAME), true); bloomFilter.write(out); out.flush(); }finally{ IOUtils.closeStream(out); } {code} -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.