You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by sz...@apache.org on 2015/06/24 17:39:51 UTC
hadoop git commit: HDFS-8253. DFSStripedOutputStream.closeThreads
releases cellBuffers multiple times. Contributed by Kai Sasaki
Repository: hadoop
Updated Branches:
refs/heads/HDFS-7285 d920cdab9 -> 093907d72
HDFS-8253. DFSStripedOutputStream.closeThreads releases cellBuffers multiple times. Contributed by Kai Sasaki
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/093907d7
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/093907d7
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/093907d7
Branch: refs/heads/HDFS-7285
Commit: 093907d728f417d9ed06d16d1a7a4afa5f547f03
Parents: d920cda
Author: Tsz-Wo Nicholas Sze <sz...@hortonworks.com>
Authored: Wed Jun 24 23:39:05 2015 +0800
Committer: Tsz-Wo Nicholas Sze <sz...@hortonworks.com>
Committed: Wed Jun 24 23:39:05 2015 +0800
----------------------------------------------------------------------
.../hadoop-hdfs/CHANGES-HDFS-EC-7285.txt | 3 +++
.../hadoop/hdfs/DFSStripedOutputStream.java | 27 +++++++++++---------
2 files changed, 18 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/093907d7/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-EC-7285.txt
----------------------------------------------------------------------
diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-EC-7285.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-EC-7285.txt
index 7f62425..f880425 100755
--- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-EC-7285.txt
+++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-EC-7285.txt
@@ -320,3 +320,6 @@
HDFS-8567. Erasure Coding: SafeMode handles file smaller than a full stripe.
(Walter Su via jing9)
+
+ HDFS-8253. DFSStripedOutputStream.closeThreads releases cellBuffers
+ multiple times. (Kai Sasaki via szetszwo)
http://git-wip-us.apache.org/repos/asf/hadoop/blob/093907d7/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSStripedOutputStream.java
----------------------------------------------------------------------
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSStripedOutputStream.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSStripedOutputStream.java
index 1068b37..cd7f6d4 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSStripedOutputStream.java
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSStripedOutputStream.java
@@ -494,21 +494,24 @@ public class DFSStripedOutputStream extends DFSOutputStream {
@Override
protected void closeThreads(boolean force) throws IOException {
final MultipleIOException.Builder b = new MultipleIOException.Builder();
- for (StripedDataStreamer streamer : streamers) {
- try {
- streamer.close(force);
- streamer.join();
- streamer.closeSocket();
- } catch(Exception e) {
+ try {
+ for (StripedDataStreamer streamer : streamers) {
try {
- handleStreamerFailure("force=" + force, e);
- } catch(IOException ioe) {
- b.add(ioe);
+ streamer.close(force);
+ streamer.join();
+ streamer.closeSocket();
+ } catch (Exception e) {
+ try {
+ handleStreamerFailure("force=" + force, e);
+ } catch (IOException ioe) {
+ b.add(ioe);
+ }
+ } finally {
+ streamer.setSocketToNull();
}
- } finally {
- streamer.setSocketToNull();
- setClosed();
}
+ } finally {
+ setClosed();
}
final IOException ioe = b.build();
if (ioe != null) {