From b256dd76006efbd4bcde3146a642fe0902d83dd2 Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Thu, 25 Dec 2014 12:48:24 +0900 Subject: [PATCH] YARN-2988. Graph#save() may leak file descriptors. (Ted Yu via ozawa) --- hadoop-yarn-project/CHANGES.txt | 2 ++ .../src/main/java/org/apache/hadoop/yarn/state/Graph.java | 8 ++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index f0d4af60a0..5dfb2789fd 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -284,6 +284,8 @@ Release 2.7.0 - UNRELEASED YARN-2946. Fixed potential deadlock in RMStateStore. (Rohith Sharmaks via jianhe) + YARN-2988. Graph#save() may leak file descriptors. (Ted Yu via ozawa) + Release 2.6.0 - 2014-11-18 INCOMPATIBLE CHANGES diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/state/Graph.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/state/Graph.java index a090194ba1..390deb21bf 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/state/Graph.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/state/Graph.java @@ -188,10 +188,10 @@ public String generateGraphViz() { } public void save(String filepath) throws IOException { - OutputStreamWriter fout = new OutputStreamWriter( - new FileOutputStream(filepath), Charset.forName("UTF-8")); - fout.write(generateGraphViz()); - fout.close(); + try (OutputStreamWriter fout = new OutputStreamWriter( + new FileOutputStream(filepath), Charset.forName("UTF-8"));) { + fout.write(generateGraphViz()); + } } public static List combineEdges(List edges) {