diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt index e959bc8b59..f25f91cf2e 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -356,11 +356,14 @@ Trunk (Unreleased) HADOOP-9431 TestSecurityUtil#testLocalHostNameForNullOrWild on systems where hostname contains capital letters (Chris Nauroth via sanjay) - HADOOP-9261 S3n filesystem can move a directory under itself -and so lose data - (fixed in HADOOP-9258) (stevel) + HADOOP-9261 S3n filesystem can move a directory under itself -and so lose data + (fixed in HADOOP-9258) (stevel) - HADOOP-9265 S3 blockstore filesystem breaks part of the Filesystem contract - (fixed in HADOOP-9258) (stevel) + HADOOP-9265 S3 blockstore filesystem breaks part of the Filesystem contract + (fixed in HADOOP-9258) (stevel) + + HADOOP-9433 TestLocalFileSystem#testHasFileDescriptor leaks file handle + (Chris Nauroth via sanjay) OPTIMIZATIONS diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestLocalFileSystem.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestLocalFileSystem.java index b843e9cf13..a5c354266c 100644 --- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestLocalFileSystem.java +++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestLocalFileSystem.java @@ -19,6 +19,7 @@ import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem.Statistics; +import org.apache.hadoop.io.IOUtils; import org.apache.hadoop.util.Shell; import static org.apache.hadoop.fs.FileSystemTestHelper.*; @@ -266,9 +267,14 @@ public void testHasFileDescriptor() throws IOException { LocalFileSystem fs = FileSystem.getLocal(conf); Path path = new Path(TEST_ROOT_DIR, "test-file"); writeFile(fs, path, 1); - BufferedFSInputStream bis = new BufferedFSInputStream( - new RawLocalFileSystem().new LocalFSFileInputStream(path), 1024); - assertNotNull(bis.getFileDescriptor()); + BufferedFSInputStream bis = null; + try { + bis = new BufferedFSInputStream(new RawLocalFileSystem() + .new LocalFSFileInputStream(path), 1024); + assertNotNull(bis.getFileDescriptor()); + } finally { + IOUtils.cleanup(null, bis); + } } @Test